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

Benedict Elliott Smith updated CASSANDRA-20222:
-----------------------------------------------
    Resolution: Fixed
        Status: Resolved  (was: Triage Needed)

> Accord: Fast and Medium path protocol optimisations
> ---------------------------------------------------
>
>                 Key: CASSANDRA-20222
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20222
>             Project: Apache Cassandra
>          Issue Type: Improvement
>          Components: Accord
>            Reporter: Benedict Elliott Smith
>            Priority: Normal
>
> Protocol optimisations:
>  - Privileged coordinator. If the coordinator is a replica we can reduce our 
> quorum sizes by including the coordinator's vote.
>    - with deps: if we include coordinator's preaccept deps we can reliably 
> reduce quorum size by 1, at the expense of recovery sometimes requiring 
> additional phases and waiting for future txns
>    - with only vote: if we only include the vote we can avoid any additional 
> recovery phases or waiting for future txns, but can reduce our quorum size 
> for only some configurations
>  - Medium path. If t=t0 at a simple majority we can take just two rounds.
>    - with additional phase: on recovery, earlier txns must wait for medium 
> path to be disabled (or committed) so we do not accidentally recover a 
> transaction that won't be witnessed
>    - with unstable deps: on slow path commit, deps not found in accept as 
> committed as unstable and do not affect recovery decisions for earlier 
> transactions
> Also improve:
>  - Recovery of await conditions simply recalculates the rejects flag rather 
> than restarting to ensure faster forward progress
>  - refactor Command hierarchy
>  - tweak: don't save Writes for non-write transactions
> Also fix:
>  - isOutOfRange when invoked from callback for some txn < Committed
>  - handle loadingPruned that is pre-bootstrap on update to bootstrappedAt
>  - journal replay can overwrite in memory state loaded for a command not yet 
> replayed
>  - subtle ordering bug in LatestDeps.mergeProposal
>  - fix occasional class initialisation order bug
>  - handle race condition on learning of topology



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to