ARK-Builders / arklib-android

Gradle wrapper for ARKLib, for usage in Android projects
MIT License
4 stars 6 forks source link

Tracked storage and CRDT #58

Open kirillt opened 1 year ago

kirillt commented 1 year ago

This new kind of storage would consist of separate tracks for each device. Each track stores history of update from its device. Main storage is result of consensus between tracks. This should improve conflicts resolution. Storages also could generalize from Monoid structure to any CRDT.

kirillt commented 1 year ago

Tracking each device separately would also allow us to handle deletions. Right now values, after being deleted, always get back from another device because simple monoid merging is used.