These are chat archives for atomix/atomix

13th
Sep 2018
kbujanecki
@kbujanecki
Sep 13 2018 06:03
To be precise, we have cluster with 4 members and raft partition group, decided to remove one of them permanently. I'm not able to reconfigure 3 others in because after
restart they read they config from meta store.
Jordan Halterman
@kuujo
Sep 13 2018 06:41

@kbujanecki The Raft implementation itself supports reconfiguration of cluster membership, but the Raft partition groups do not currently support it for a variety of reasons. Any rudimentary implementation using Raft cluster reconfiguration would be unstable. The problem is, reconfiguring Raft partitions really needs to be done transactionally to avoid partial configuration changes in the event of a failure, so what we need is something like the transaction coordinator where two phase commit is used for cross-partition commits and a peer takes over for the coordinator in the event of a node crashing during a transaction. That’s not hard to implement, but not trivial either.

Another question is what the configuration API would look like. Allowing Raft partition group membership to be changed in configuration files would create cases where a configuration file is out of sync with the actual partition group configuration. We probably want to store configurations internally and provide an API for reconfiguring the cluster at runtime to preserve and expose an internal representation of the active configuration. We could do that using the management partition group.

Vadi Kumar
@Vadi
Sep 13 2018 09:56
Can anyone throw some light on where Atomix is used currently, some benchmarks and so on?