I understand that CRDB provides Serialization level isolation. And due to its implementation methodology, it even provides sequential consistency on all transactions on any node.
Jepsen’s Comments test showed that transactions from same client C on two different nodes can be reordered to an observer. However, it hinted, that by threading a causality token through transactions this can be prevented (or the chances of it reduced).
Is this mechanism already implemented in 2.0?
If so, I suppose this mechanism would still leave a gap, if the client lost the causality token in between transactions (restart/crash etc.).
Is there any updated documentation (need not be very user friendly) that can explain the current sequential consistency guarantees (not isolation level), under what conditions they apply, and most importantly, examples of conditions under which they can fail.
This is just a hypothetical exercise at present and I do not have an exact problem that requires it.