iOS Date Bug #313

Closed
opened 2025-12-29 18:25:35 +01:00 by adam · 2 comments
Owner

Originally created by @pingus-nikalex on GitHub (Feb 28, 2020).

I have date in format "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
have 2 different tables:
Pin
class PinEntity: NSManagedObject {

@NSManaged var categoryId:String
@NSManaged var color:String
@NSManaged var createdAt:Date
@NSManaged var ddeleted:Bool
@NSManaged var ddescription:String
@NSManaged var id:String
@NSManaged var name:String
@NSManaged var ownerId:String
@NSManaged var updatedAt:Date
@NSManaged var version:String
@NSManaged var type:String
@NSManaged var latitude:Double
@NSManaged var longitude:Double

}

and
SyncTable
class SyncDateEntity: NSManagedObject {

@NSManaged var tableName:String
@NSManaged var lastSyncDate:Date

}

After saving one date to this tables: Example Date:
▿ 2020-02-28 12:09:47 +0000

  • timeIntervalSinceReferenceDate : 604584587.157463

I have different time in this tables:
pins has
▿ 2020-02-28 12:09:47 +0000

  • timeIntervalSinceReferenceDate : 604584587.157463
    SyncTable has
    ▿ 2020-02-28 12:09:47 +0000
  • timeIntervalSinceReferenceDate : 604584587.1570001
    This milliseconds very important because when I fetch pins - with

func getPinsForSync(lastSyncDate:Date, completion:(([PinEntity]?) -> ())?) {
let pinsEntity = try! dataStack.fetchAll(From().where(.updatedAt > lastSyncDate))
if(completion != nil) {
completion!(pinsEntity)
}
}
always fetching one last pin and we need to sync his. Not correct.
Can anybody help with this problem, because I don't any ideas how to fix this.

Originally created by @pingus-nikalex on GitHub (Feb 28, 2020). I have date in format "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ" have 2 different tables: Pin class PinEntity: NSManagedObject { @NSManaged var categoryId:String @NSManaged var color:String @NSManaged var createdAt:Date @NSManaged var ddeleted:Bool @NSManaged var ddescription:String @NSManaged var id:String @NSManaged var name:String @NSManaged var ownerId:String @NSManaged var updatedAt:Date @NSManaged var version:String @NSManaged var type:String @NSManaged var latitude:Double @NSManaged var longitude:Double } and SyncTable class SyncDateEntity: NSManagedObject { @NSManaged var tableName:String @NSManaged var lastSyncDate:Date } After saving one date to this tables: Example Date: ▿ 2020-02-28 12:09:47 +0000 - timeIntervalSinceReferenceDate : 604584587.157463 I have different time in this tables: pins has ▿ 2020-02-28 12:09:47 +0000 - timeIntervalSinceReferenceDate : 604584587.157463 SyncTable has ▿ 2020-02-28 12:09:47 +0000 - timeIntervalSinceReferenceDate : 604584587.1570001 This milliseconds very important because when I fetch pins - with func getPinsForSync(lastSyncDate:Date, completion:(([PinEntity]?) -> ())?) { let pinsEntity = try! dataStack.fetchAll(From<PinEntity>().where(\.updatedAt > lastSyncDate)) if(completion != nil) { completion!(pinsEntity) } } always fetching one last pin and we need to sync his. Not correct. Can anybody help with this problem, because I don't any ideas how to fix this.
adam closed this issue 2025-12-29 18:25:35 +01:00
Author
Owner

@JohnEstropia commented on GitHub (Feb 28, 2020):

Can you show how you are setting the dates for PinEntity and SyncDateEntity?

@JohnEstropia commented on GitHub (Feb 28, 2020): Can you show how you are setting the dates for PinEntity and SyncDateEntity?
Author
Owner

@pingus-nikalex commented on GitHub (Mar 11, 2020):

Sorry it's server side bug. All work correct.

@pingus-nikalex commented on GitHub (Mar 11, 2020): Sorry it's server side bug. All work correct.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/CoreStore-JohnEstropia#313