4 ms·
I don't believe it is possible to arrive at any generic solution that resolves the kind of conflict that you are describing. The best they can do is keep the la
by lf-non 4y ago
I don't believe it is possible to arrive at any generic solution that resolves the kind of conflict that you are describing. The best they can do is keep the latest value at row+column level.
Notwithstanding, there are a lot of possible changes that can compose well, but with traditional databases it is hard to merge divergent datasets even if the changes are non-overlapping. That is where solutions like this improve the state of the art - by obviating a need for secondary sync/merge layer on top.
For the actual cell level conflicts the application developer will have to either write custom resolution or model the domain so that they can be resolved by user later.
- bawolff 4y agoSure, but i would kind of expect the readme document to explain what happens (what is the consistency model) since this is not an obscure case but basically the primary use case for an ACID database like sqlite.
- anentropic 4y agohttps://github.com/vlcn-io/cr-sqlite/tree/ca9a67f9050844458ef377f666aa52893aad3fd8#rows https://github.com/vlcn-io/cr-sqlite/tree/ca9a67f9050844458e... It's not very clearly stated, but the links show it has "Last Write Wins" semantics for conflicting changes https://bartoszsypytkowski.com/crdt-map/#crdtmapwithlastwritewinsupdates https://bartoszsypytkowski.com/crdt-map/#crdtmapwithlastwrit... https://bartoszsypytkowski.com/operation-based-crdts-registers-and-sets/#lastwritewinsregister https://bartoszsypytkowski.com/operation-based-crdts-registe...