[
https://issues.apache.org/jira/browse/CASSANDRA-19436?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ariel Weisberg updated CASSANDRA-19436:
---------------------------------------
Bug Category: Parent values: Correctness(12982)
Complexity: Normal
Component/s: Accord
Consistency/Coordination
Discovered By: Code Inspection
Fix Version/s: 5.x
Reviewers: Blake Eggleston
Severity: Critical
Assignee: Ariel Weisberg
Status: Open (was: Triage Needed)
> When transitioning to Accord migration it's not safe to read immediately
> using Accord due to concurrent non-serial writes
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-19436
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19436
> Project: Cassandra
> Issue Type: Bug
> Components: Accord, Consistency/Coordination
> Reporter: Ariel Weisberg
> Assignee: Ariel Weisberg
> Priority: Normal
> Fix For: 5.x
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Concurrent writes at the same time that migration starts make it unsafe to
> read from Accord because txn recovery will not be deterministic in the
> presences of writes not done through Accord.
> Migration to Accord needs to be split into two phases, in the first phase we
> write through Accord and always respect the consistency level and do
> synchronous commit. This allows Paxos and non-serial writes to continue while
> Accord's metadata covers everything needed for future reads. Paxos continues
> to operate as normal since it has enough metadata to allow key migration in
> the second phase and we need to stay online so something needs to handle LWTs.
> Then repair runs and makes it possible for Accord to read any data written
> non-transactionally and we can then do key migration and route all updates
> (conditional or blind) through Accord while Paxos repair runs so we can stop
> doing key migration.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]