| there is no single definition of a crdt "register" i know this because i've implemented many versions of crdt "registers", with different properties, at scale there are lww registers and multi-value registers, the former provides deterministic (but arbitrary) conflict resolution which loses information, the latter provides deterministic and non-arbitrary conflict resolution without losing information but with a more complex API > The observation was correct at that time and place, meaning, in the partition that it was observed. This is the P in AP. this is not what partition means partition means that different subsets of nodes in a single system have different views on reality if v=blue was true only during a partition, and is no longer represented in the history of v when the partition heals, then this value is not legal, violates serializability, is incorrect, etc. https://jepsen.io/consistency#consistency-models this has nothing to do with synchronization |
Use a single value register then in place where I said “register”.
> partition means that different subsets of nodes in a single system have different views on reality
Partition means that nodes of a (single) network are (temporarily) not connected.
In the example discussed here, blue and green were in different partitions thus had “different view” to the state. Once synchronized, their view on the state is consistent and both observe both values, blue being the latest state.
> is no longer represented in the history of v when the partition heals
Please review the above discussion again and the original article. You keep saying this but it’s shown in both that it’s is not true.