distributed-systempaxos

Can multiple values be accepted in a single run?


Consider the following flow :

Proposer prepares a message, gets a promise, sends a proposal with some value, gets it accepted. All fine.

After acceptance, another proposer comes along and prepares a message with a higer id, and the same flow continues.

Is this a valid flow of a single round of the paxos algorithm? Or is this actually multi paxos?


Solution

  • After acceptance if another proposer comes along and prepares a message, it will receive at least one reply containing the previously accepted value. The Paxos rules then require that the second proposer MUST propose the previously accepted value. The value it wants to propose is overridden by the first value. This ensures that only a single value can be chosen for a single instance of the Paxos algorithm.