In Paxos, can an Acceptor accept a different value after it has already accepted one?

前端 未结 4 1878
忘掉有多难
忘掉有多难 2021-01-05 13:39

In Multi-Paxos algorithm, consider this message flow from the viewpoint of an acceptor:

receive: Prepare(N)

reply: Promise(N, null)

receive: Accept!(

4条回答
  •  余生分开走
    2021-01-05 14:08

    Perhaps a simpler answer is to observe that this is the case when the Prepare(N+1) command was accepted by a majority that did not include the acceptor in question.

    To elaborate: Once a leader knows that some majority has Promised(N+1), it then sends Accept(N+1,x) to all acceptors, and even if some other majority of acceptors reply with Accepted(N+1) then consensus has been reached.

    This is not that unusual a scenario.

提交回复
热议问题