Sylvain Lebresne created CASSANDRA-6012:
-------------------------------------------
Summary: CAS does not always correctly replay inProgress rounds
Key: CASSANDRA-6012
URL: https://issues.apache.org/jira/browse/CASSANDRA-6012
Project: Cassandra
Issue Type: Bug
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
Attachments:
0001-Don-t-skip-paxos-old-round-replay-if-there-is-a-value-.txt
Paxos says that on receiving the result of a prepare from a quorum of
acceptors, the proposer should propose the value of the higher-number proposal
accepted amongst the ones returned by the acceptors, and only propose his own
value if no acceptor has send us back a previously accepted value.
But in PrepareCallback we only keep the more recent inProgress commit
regardless of whether is has an update. Which means we could ignore a value
already accepted by some acceptors if any of the acceptor send us a more recent
ballot than the other acceptor but with no values. The net effect is that we
can mistakenly accept two different values for the same round.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira