You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2013/09/12 17:30:52 UTC
[jira] [Created] (CASSANDRA-6012) CAS does not always correctly
replay inProgress rounds
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