Reputation: 24818
What happens in this situation?
As I understand it: The 2 followers have applied a "bad" write and when the network partition mends they will overwrite that write with the majority leaders history. But this violates linearization.
🤔
Upvotes: 0
Views: 539
Reputation: 8185
You're confusing replication with commitment. Merely replicating an entry to a minority of this cluster doesn't break linearizability. What's important is when that change is considered committed. Since the leader on the minority side of the partition is unable to replicate the change to a majority of the cluster, it will never commit the change and will never acknowledge to a client that the change has been persisted. Furthermore, the uncommitted change will never have been applied to the state machine on any node. Therefore, overwriting the uncommitted change when the partition is healed does not break any guarantees.
Guarantees would only be broken if the leader were to increase the commitIndex
and acknowledge a write after replicating only to a minority of the cluster.
Upvotes: 2