Long time listener, first time caller here - hello! I am very interested in this part "Better safety among range movements: Electorate verification during range movements provides a stronger assertion of linearizability via assurance of the set of instances voting on a transaction.ā
I have seen issues in the wild where people want to add/remove DCs. I think that there may be a risk consistency violations due to transactions circumventing the locks held by in-progress transactions. Will electorate verification help in the below scenario? Queries are running at SERIAL, writing at EACH_QUORUM against DC1 at RF=3. DC2 is added, and once all nodes are in UN the schema is adjusted so that DC2ās RF=3. While the new schema propagates, there is a transitional state, in which some potential coordinators have the new schema S2, and others are operating on the old schema S1. In this state, S2 form consensus from 4/6 nodes, while S1 coordinators form consensus from 2/3 nodes. A query issued from an S1 coordinator can form a valid consensus which will circumvent the lock held by an S2 coordinator. I was thinking of proposing an EACH_QUORUM serial CL, but if electorate verification solves the problem then that may be the better solution. Miles > On 19 Aug 2021, at 9:18 am, Scott Andreas <sc...@paradoxica.net> wrote: > > Benedict, thank you for sharing this CEP! > > Adding some notes on why I support this proposal: > > - Reducing common-case round trips from 4x to 2x on writes and 2x to 1x on > reads is a huge improvement. This latency reduction may be sufficient to > allow many users of Cassandra who operate in a single datacenter, > availability zone, or region to migrate to a multi-region topology. > > - The Cluster Simulation work described in CEP-10 provides a toolchain for > probabilistically-exhaustive validation and simulation of transactional > correctness, allowing assertion of linearizability in the presence of > adversarial thread scheduling and message ordering over an unbounded number > of simulated clusters and transactions. > > - Some use cases may see a superlinear increase in LWT performance due to a > reduction in contention afforded by fewer message round-trips. E.g., halving > latency shortens the interval during which competing transactions may > conflict, reducing contention and improving throughput beyond a level that > would be afforded by the latency reduction alone. > > - Better safety among range movements: Electorate verification during range > movements provides a stronger assertion of linearizability via assurance of > the set of instances voting on a transaction. > > ā Scott > > ________________________________________ > From: bened...@apache.org <bened...@apache.org> > Sent: Wednesday, August 18, 2021 2:31 PM > To: dev@cassandra.apache.org > Subject: [DISCUSS] CEP 14: Paxos Improvements > > RE: > https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-14%3A+Paxos+Improvements > > Iām proposing this CEP for approval by the project. The goal is to both > improve the performance of LWTs and to ensure their correctness across a > range of scenario like range movements. This work builds upon the Simulator > CEP that has been recently adopted, and patches will follow in the coming > weeks. > > If you have any concerns or questions please raise them here for discussion. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org > For additional commands, e-mail: dev-h...@cassandra.apache.org >