Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-06 Thread Sam Tunnicliffe
Hi Jacek, Thanks for the great questions, they certainly all relate to things we considered, so I hope I can answer them in a coherent way! > will it be a replica group explicitly associated with each event Some (but not all) events are explicitly associated with a replica group (or more acc

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-06 Thread Jacek Lewandowski
Hi Sam, this is a great idea and a really well described CEP! I have some questions, perhaps they reflect my weak understanding, but maybe you can answer: Is it going to work so that each node reads the log individually and try to catch up in a way that it applies a transition locally once the pre

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-06 Thread Sam Tunnicliffe
> On 5 Sep 2022, at 22:02, Henrik Ingo wrote: > > Mostly I just wanted to ack that at least someone read the doc (somewhat > superficially sure, but some parts with thought...) > Thanks, it's a lot to digest, so we appreciate that people are working through it. > One pre-feature that we wo

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-05 Thread Henrik Ingo
Mostly I just wanted to ack that at least someone read the doc (somewhat superficially sure, but some parts with thought...) One pre-feature that we would include in the preceding minor release is a > node level switch to disable all operations that modify cluster metadata > state. This would incl

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-02 Thread Benedict
Unmesh, LWTs today repair themselves periodically already, and do not rely on a later proposer. Also, the CMS will naturally use a single partition key for each log it needs to maintain, else they would not be linearised. > On 2 Sep 2022, at 05:01, Unmesh Joshi wrote: > >  >> I think impleme

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-01 Thread Unmesh Joshi
> > I think implementation has to work according to expectations described in > CEP, and have enough tests to prove it. You can follow the progress of the > patch whenever CEP is accepted and code is published to learn about the > details. > Thanks, will follow the implementation. If you'd like t

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-01 Thread Alex Petrov
Usually implementations are not documented in CEP. I think implementation has to work according to expectations described in CEP, and have enough tests to prove it. You can follow the progress of the patch whenever CEP is accepted and code is published to learn about the details. If you'd like

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-09-01 Thread Unmesh Joshi
On Thu, Sep 1, 2022 at 11:20 AM Alex Petrov wrote: > There will be no changes required to our existing Paxos implementation. We > can just use it. Besides, Paxos is only used as K-sequencer. There is no > need to use Raft, and both existing LWTs (with Multi-Paxos) and Accord > aren't tied to a si

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-31 Thread Alex Petrov
> I see that implementing a Replicated Log > > needs significant changes, particularly about how two phases of Paxos are > implemented over the entire log. So will it be better to use

RE: Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-31 Thread Unmesh Joshi
Hi Sam, Great to see this CEP. I have been documenting a few common 'patterns of distributed systems, and have documented a pattern called 'consistent core ' referring to the source code of various systems whic

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-24 Thread Sam Tunnicliffe
Good catch, I'll update the doc. Thanks, Sam > On 24 Aug 2022, at 10:24, Claude Warren, Jr via dev > wrote: > > Should > > (**) It may seem counterintuitive, that A is being written to even after > we've stopped reading from it. This is done in order to guarantee that by the > time we sto

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-24 Thread Claude Warren, Jr via dev
Should (**) It may seem counterintuitive, that A is being written to even after > we've stopped reading from it. This is done in order to guarantee that by > the time we stop writing to the node giving up the range, there is no > coordinator that may attempt reading from it without learning about

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-23 Thread Mick Semb Wever
I just want to say I’m really excited about this work. It’s one of the last > remaining major inadequacies of the project that makes it hard for people > to deploy, and hard for us to develop. > > Second this. And what a solid write up Sam - it's a real joy reading this CEP.

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-23 Thread Derek Chen-Becker
On Tue, Aug 23, 2022 at 2:51 AM Sam Tunnicliffe wrote: > > Regular read/write operations should not be halted, even by a total > failure of the metadata service. There should be no situations where the a > previously stable database becomes entirely unavailable due to a CMS > failure. The worst c

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-23 Thread Sam Tunnicliffe
> What do you expect this to look like in practice? JSON representation of the > ring? Would reads and writes have halted? In what situations would the > database be entirely unavailable? The format is pretty much TDB I'm afraid. A JSON representation, or one in an equivalent textual format, i

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-23 Thread Sam Tunnicliffe
Thanks! The core of the proposal is around the sequencing metadata changes and ensuring that they're delivered to/processed by nodes in the right order and at the right time. The actual mechanisms for imposing that order and for maintaining the log are pretty simple to implement. We envision us

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-22 Thread Jeff Jirsa
“ The proposed mechanism for dealing with both of these failure types is to enable a manual operator override mode. This would allow operators to inject metadata changes (potentially overriding the complete metadata state) directly on any and all nodes in a cluster. At the most extreme end of th

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-22 Thread Derek Chen-Becker
This looks really interesting; thanks for putting this together! Just so I'm clear on CEP nomenclature, having external management of metadata as a non-goal doesn't preclude some future use, correct? Coincidentally, I'm working on my ApacheCon talk on improving modularity in Cassandra and one of th

Re: [DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-22 Thread Benedict
I just want to say I’m really excited about this work. It’s one of the last remaining major inadequacies of the project that makes it hard for people to deploy, and hard for us to develop. Can’t wait for it to be fixed. > On 22 Aug 2022, at 13:45, Sam Tunnicliffe wrote: > Hi, > > I'd like to

[DISCUSS] CEP-21: Transactional Cluster Metadata

2022-08-22 Thread Sam Tunnicliffe
Hi, I'd like to open discussion about this CEP: https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-21%3A+Transactional+Cluster+Metadata Cluster metadata in Cassandra comprises a number