[ 
https://issues.apache.org/jira/browse/CASSANDRA-20493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Blake Eggleston updated CASSANDRA-20493:
----------------------------------------
    Reviewers: Alex Petrov, Ariel Weisberg, Blake Eggleston
       Status: Review In Progress  (was: Patch Available)

> Paxos infinite loop in mixed mode
> ---------------------------------
>
>                 Key: CASSANDRA-20493
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20493
>             Project: Apache Cassandra
>          Issue Type: Bug
>          Components: Feature/Lightweight Transactions
>            Reporter: Blake Eggleston
>            Assignee: Blake Eggleston
>            Priority: Normal
>             Fix For: 4.1.x
>
>         Attachments: ci_summary-4.1.html, ci_summary-5.0.html, 
> ci_summary-trunk.html
>
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> Paxos uses a 'zero' ballot in place of null when it doesn't find a ballot in 
> system.paxos. CEP-14 changed the lsb of the zero ballot uuid from 
> -9187201950435737472 to 0. It also removed the check added in 
> CASSANDRA-12043, since the way it read and filtered ttld paxos data had been 
> improved. 
> In mixed mode with a 4.0 or lower replica and a 4.1 and higher paxos 
> coordinator, and in the absence of existing paxos metadata for the key being 
> queried, the prepare phase will interpret the mismatched ‘zero’ ballots as 
> the 4.0 and lower nodes having missed the most recent commit and will attempt 
> to update them using the 4.1 zero ballot and empty partition update.
> In cases where this is the first paxos operation on a key, or the previously 
> ttl'd paxos data on disk had been purged, this would just add a retry step as 
> it updated the 4.0 and lower hosts with it's zero ballot. On nodes where 
> there was ttl'd paxos data though, the ttl'd data on disk would shadow this 
> update and the conflicting 'zero' value would cause the prepare phase to get 
> into an infinite loop.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to