airpingu / data-store-api

W3C working draft for Data Store API
http://airpingu.github.io/data-store-api/index.html
4 stars 2 forks source link

discarding old revisions of datastores #22

Closed jmajnert closed 9 years ago

jmajnert commented 10 years ago

For the sync mechanism to work, the UA needs to keep record of all revisions of datastore that were ever requested by client apps. Taking into account the fact that apps may not be "installed", we might not know if an app will ever be used again. Thus we cannot discard any revision of any datastore for fear that some app might want to update from that version.

I would like to propose a solution used in this situation by SyncML - if an old revision is forgotten/discarded by UA, the sync() method should inform the caller, that it should do a "full sync", that is retrieve the whole data store again.

airpingu commented 10 years ago

Thanks @jmajnert a lot for all the contributions to the issues, which are really great! :)

bakulf commented 10 years ago

This is currently implemented in DataStore for b2g. Gecko keeps the last X (200?) revisionIds. If an old revision is used, the cursor sends a 'clear' operation and then it does a full sync from scratch. We should update the specs.

jmajnert commented 9 years ago

Not relevant anymore