+1 One of the major advantages of a separate library would be modularity.
Dinesh > On Sep 5, 2021, at 3:02 PM, bened...@apache.org wrote: > > Yep, that’s correct. In fact my goal is that we maintain this as a > standalone library long term. While its primary goal will be integration with > Cassandra, I think there is value in maintaining a distinct library for the > core functionality - so long as the burden remains manageable. > > From: Nate McCall <zznat...@gmail.com> > Date: Sunday, 5 September 2021 at 22:30 > To: dev <dev@cassandra.apache.org> > Subject: Re: [DISCUSS] CEP-15: General Purpose Transactions > Hi Benedict, > If I'm parsing this correctly, you want to include the stand-alone library > in the project as a separate repo to begin with, correct? (I'm +1 on that, > if so). > > Otherwise I am very intrigued by the paper and proposal. This looks > excellent. Thanks Benedict, et all for putting this together! > > -Nate > >> On Mon, Sep 6, 2021 at 2:33 AM bened...@apache.org <bened...@apache.org> >> wrote: >> >> Wiki: >> https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-15%3A+General+Purpose+Transactions >> Whitepaper: >> https://cwiki.apache.org/confluence/download/attachments/188744725/Accord.pdf >> < >> https://cwiki.apache.org/confluence/download/attachments/188744725/Accord.pdf?version=1&modificationDate=1630847736966&api=v2 >>> >> Prototype: https://github.com/belliottsmith/accord >> >> Hi everyone, I’d like to propose this CEP for adoption by the community. >> >> Cassandra has benefitted from LWTs for many years, but application >> developers that want to ensure consistency for complex operations must >> either accept the scalability bottleneck of serializing all related state >> through a single partition, or layer a complex state machine on top of the >> database. These are sophisticated and costly activities that our users >> should not be expected to undertake. Since distributed databases are >> beginning to offer distributed transactions with fewer caveats, it is past >> time for Cassandra to do so as well. >> >> This CEP proposes the use of several novel techniques that build upon >> research (that followed EPaxos) to deliver (non-interactive) general >> purpose distributed transactions. The approach is outlined in the wikipage >> and in more detail in the linked whitepaper. Importantly, by adopting this >> approach we will be the _only_ distributed database to offer global, >> scalable, strict serializable transactions in one wide area round-trip. >> This would represent a significant improvement in the state of the art, >> both in the academic literature and in commercial or open source offerings. >> >> This work has been partially realised in a prototype. This partial >> prototype has been verified against Jepsen.io’s Maelstrom library and >> dedicated in-tree strict serializability verification tools, but much work >> remains for the work to be production capable and integrated into Cassandra. >> >> I propose including the prototype in the project as a new source >> repository, to be developed as a standalone library for integration into >> Cassandra. I hope the community sees the important value proposition of >> this proposal, and will adopt the CEP after this discussion, so that the >> library and its integration into Cassandra can be developed in parallel and >> with the involvement of the wider community. >> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org For additional commands, e-mail: dev-h...@cassandra.apache.org