2 ms·
I don't think that's required, unless you definitionally believe otherwise. When clients disagree about the the order of events and a conflict results then cli
by jdvh 2y ago
I don't think that's required, unless you definitionally believe otherwise.
When clients disagree about the the order of events and a conflict results then clients can be required to roll back (apply the inverse of each change) to the last point in time where all clients were in agreement about the world state. Then, all clients re-apply all changes in the new now-agreed-upon order. Now all changes have been applied and there is agreement about the world state and the process starts anew.
This way multiple clients can work offline for extended periods of time and then reconcile with other clients.
- dboreham 2y agoThat's not how the CRDT concept works.
- jdvh 2y agoYou're free to argue that this isn't "pure" CRDT, but the CRDT algorithm still runs normally, just a bit later than it otherwise would.
- satvikpendem 2y agoEg-walker seems similar to what you're proposing [0]. A more in-depth video by the creator [1]. [0] https://loro.dev/docs/advanced/event_graph_walker https://loro.dev/docs/advanced/event_graph_walker [1] https://www.youtube.com/watch?v=rjbEG7COj7o https://www.youtube.com/watch?v=rjbEG7COj7o