Sloppy Quorum Overlap

A Dynamo-style store runs N=3, W=2, R=2, so W + R > N. For key cart:88 the preference list is nodes A, B, C.

A network event isolates A and B. The coordinator does not fail the write: it takes the first N healthy nodes instead, so the write commits on C, D and E, where D and E carry hints saying the replicas belong to A and B.

The partition heals. Before hinted handoff has run, a client reads cart:88 with R=2 and the coordinator collects responses from A and B.

What does W + R > N guarantee here?

A

The guarantee only fails when W drops below a strict majority, and W=2 out of N=3 is already a majority

B

Nothing: two of the three write acknowledgements came from nodes outside the preference list, so a read quorum drawn from the preference list can miss the write entirely and return the pre-partition value

C

The overlap still holds, because a hinted replica counts as a member of the preference list for quorum purposes until the hint is delivered

D

The read returns both versions and the client reconciles them by vector clock, so the guarantee is preserved at the application layer