[ 
https://issues.apache.org/jira/browse/CASSANDRA-17164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17490198#comment-17490198
 ] 

Benedict Elliott Smith commented on CASSANDRA-17164:
----------------------------------------------------

Quick update: the burn tests unfortunately shook out some remaining teething 
issues with simulation of Paxos v2, that I am still working through. I have 
incorporated [~bdeggleston]'s suggestions, with one minor change to the 
refactor of {{sizeOfConsensusQuorum}}.

I can see [~blambov] is still making good progress on a very comprehensive 
piece of documentation with semi-formal proofs. I haven't had time to properly 
digest it but it looks great.

One comment I would perhaps make, more generally than specifically to modify 
this documentation, is that I think it would be quite possible to use 
Multi-Paxos without burdensome state maintenance (e.g. by using token ranges 
for leader election, perhaps with per-key leaders in some rare circumstances). 

This would have trade-offs, however, in that the fast-read optimisation would 
be excluded and we would have heterogenous read performance between regions. 
This is probably a desirable trade-off particularly for write-heavy workloads 
and the _main_ reason we haven't done this is because we wanted to pursue 
_Accord_ and its superior semantics, as multi-key transactions are highly 
desirable, as are global 1RT reads (and global 1RT writes under realistic 
scenarios). 

It was my belief that pursuing Multi-Paxos in the near term would be a 
mis-investment of project resources. I think it is entirely possible we may 
loop back to provide Multi-Paxos eventually, as I do not think it is a hugely 
challenging proposition in itself and there may be some workloads that prefer 
it even once _Accord_ is delivered. The main difficulty would be the additional 
logic for routing operations to the correct command leader (perhaps involving 
client integration) and robust failure detection (currently much too poor in 
Cassandra). If somebody else wants to pursue this, I would be more than happy 
to help shepherd it, as it is certainly achievable.

> CEP-14: Paxos Improvements
> --------------------------
>
>                 Key: CASSANDRA-17164
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17164
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Consistency/Coordination, Consistency/Repair
>            Reporter: Benedict Elliott Smith
>            Assignee: Benedict Elliott Smith
>            Priority: Normal
>             Fix For: 4.1
>
>
> This ticket encompasses work for [CEP-14|
> https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-14%3A+Paxos+Improvements].



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to