What does the ABD algorithm ensure and how does it work?

Ensures linearizability by using write and read quorums with read repair

Set operation
Updates are sent to all replicas
Once a quorum acknowledges the write we are done

Get operation
Uses read quorum
If the quorum responds with different values, other replicas are repaired (ABD algorithm)
 
Algorithm
1. Client sends read request to all replicas and waits for the response of a quorum
2. Compares the respons values based on their timestamps
3. Writes back the most recent version of the value to a quorum (read repair)
4. Only returns the value after the quorum has acknowledged the read repair

Diskussion