Skip to content

Commit 3d702d7

Browse files
committed
Check server clock before pushing
1 parent 8edcd6a commit 3d702d7

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

Sources/ParseCareKit/ParseRemote.swift

+5-10
Original file line numberDiff line numberDiff line change
@@ -322,13 +322,8 @@ public class ParseRemote: OCKRemoteSynchronizable {
322322
Task {
323323
do {
324324
// Fetch Clock from Cloud
325-
var parseClock = await self.remoteStatus.clock
326-
if parseClock == nil {
327-
parseClock = try await PCKClock.new(uuid: self.uuid)
328-
await self.remoteStatus.updateClock(parseClock)
329-
}
330-
guard let currentClock = parseClock,
331-
let parseVector = currentClock.knowledgeVector else {
325+
let parseClock = try await PCKClock.new(uuid: self.uuid)
326+
guard let parseVector = parseClock.knowledgeVector else {
332327
await self.remoteStatus.notSynchronzing()
333328
// There was a different issue that we don't know how to handle
334329
Logger.pushRevisions.error("Error in pushRevisions. Couldn't unwrap clock")
@@ -346,7 +341,7 @@ public class ParseRemote: OCKRemoteSynchronizable {
346341

347342
guard deviceRevisions.count > 0 else {
348343
self.completePushRevisions(shouldIncrementClock: false,
349-
parseClock: currentClock,
344+
parseClock: parseClock,
350345
parseVector: parseVector,
351346
localClock: deviceKnowledge,
352347
completion: completion)
@@ -361,13 +356,13 @@ public class ParseRemote: OCKRemoteSynchronizable {
361356
do {
362357
let remoteRevision = try PCKRevisionRecord(record: deviceRevision,
363358
remoteClockUUID: self.uuid,
364-
remoteClock: currentClock,
359+
remoteClock: parseClock,
365360
remoteClockValue: logicalClock)
366361
try await remoteRevision.save()
367362
self.notifyRevisionProgress(index + 1,
368363
total: deviceRevisions.count)
369364
if index == (deviceRevisions.count - 1) {
370-
self.completePushRevisions(parseClock: currentClock,
365+
self.completePushRevisions(parseClock: parseClock,
371366
parseVector: parseVector,
372367
localClock: deviceKnowledge,
373368
completion: completion)

0 commit comments

Comments
 (0)