| Author here. We've spent the past year adding read committed isolation to CockroachDB. There were many interesting design decisions, such as: - whether to use multiple snapshots or a single snapshot per statement - how to handle read uncertainty intervals - how to incorporate SELECT FOR UPDATE locking into Raft - how to handle SELECT FOR UPDATE subqueries - how to prevent lost update anomalies between two UPDATEs Some of the gory details are in the public RFC: https://github.com/cockroachdb/cockroach/blob/master/docs/RF... This blog post just discusses the last point, but please AMA. |