4 ms·
It's not possible to seamlessly/transparently/asynchronously synchronize data; conflict resolution must be done. If this was possible, iCloud+CoreData would ha
by pbsdp 13y ago
It's not possible to seamlessly/transparently/asynchronously synchronize data; conflict resolution must be done.
If this was possible, iCloud+CoreData would have worked, and Oracle/PostgreSQL/etc would be shipping transparent, ACID, horizontally scalable RDMS.
- LinaLauneBaer 13y agoFrom what I have seen this project uses the Dropbox Datastore API. The Dropbox Datastore API has very limited support for conflict resolution: - DBResolutionRemote: The remote value will be chosen. This is the default behavior for all fields. - DBResolutionLocal: The local value of the field will be chosen. - DBResolutionMax: The greater of the two changes will be chosen. - DBResolutionMin: The lesser of the two changes will be chosen. - DBResolutionSum: Additions and subtractions to the value will be preserved and combined. So with these limited conflict resolution options conflicts might occur but they can be resolved automatically. I am not saying this is good or bad but beside setting one of those resolution modes there is nothing else to do - except explaining to users what happened to their data in the case of a conflict that should have been resolved with a more sophisticated mechanism. iCloud+Core Data on the other hand allows custom conflict resolution on the clients.
- smarx 13y agoWe're definitely looking at adding more options for custom conflict resolution once we get out of beta.
- pbsdp 13y ago> iCloud+Core Data on the other hand allows custom conflict resolution on the clients. The new APIs in iOS 7 do, but then you lose all the value of "transparent distributed store" and it winds up being a pretty sizable hassle.