A Quorum Is Not Enough — w + r > n and Still a Stale Read (Figure 10-6) n = 3 replicas, w = 3, r = 2 · client B starts after client A returned, yet gets the older value writer write(x, 1) → sent to all three replicas (w = 3) — acks trickle in replica n1 replica n2 replica n3 x = 1 arrives x = 1 arrives x = 1 arrives each replica flips 0 → 1 at a different moment — replication is in flight client A read r = 2 ⇒ 1 n1: 1 n2: 0 quorum {n1, n2} — read races the write client B read r = 2 ⇒ 0 — STALE n2: 0 n3: 0 quorum {n2, n3} — both replicas still lag B starts after A returned yet reads an older value Why quorums are not enough Fixes: synchronous read repair before returning · fetch the latest timestamp from a quorum before writing · wall-clock LWW is never linearizable (clock skew) · linearizable CAS needs consensus.