Read Repair
When to Use Read Repair
In Practice
How Read Repair Comes Up in Interviews
Scenario
In a Dynamo-style store, a quorum read sometimes finds replicas disagreeing. Rather than waiting for a separate sweep job, the system writes the freshest version back to the stale replicas in the background of that same read. What's that called?
Read repair piggybacks reconciliation onto live reads. Anti-entropy is the related background process that catches cold data reads never touch.
Read repair piggybacks reconciliation onto live reads, when a quorum read sees disagreeing replicas, the coordinator picks the freshest version (by timestamp or vector clock) and writes it back to the stale replicas asynchronously. Cassandra does this on every read above CL.ONE; Dynamo's original paper introduces the technique. The limitation is that read-repair only fixes data someone actually reads: cold keys can stay stale forever, which is why production systems pair it with periodic anti-entropy (Merkle-tree comparison) for the cold data. The combo means hot data converges within one read RTT, and cold data converges within one anti-entropy cycle.