These are chat archives for atomix/atomix

Feb 2018
Yashwant Vijayakumar
Feb 08 2018 00:30
@kuujo forgot to ask this, is this project in a very mature stage, as in all major portions are already completed?
Jordan Halterman
Feb 08 2018 00:53
@yashwa7 I personally wouldn’t call it mature. It’s pretty mature in terms of features - the Raft implementation is probably the most feature rich Raft implementation in existence, and the cluster management/messaging/primitives have been in use in development for years. I consider it Atomix feature complete. But it has really been developed as part of a large research project at ONF where I work, and as such it’s just beginning to be put into production at some of the companies we’ve partnered with.
It’s really at the stage now where we’re working with research teams at other large companies to test it for production. But that’s largely a product of the software it supports (ONOS) rather than anything about Atomix itself.
Jordan Halterman
Feb 08 2018 18:27
We’ve been getting some very positive feedback from other labs on the latest Atomix Raft changes. We need to go through and make sure they’re all in 2.1 now. I’ll start revising all the pending PRs today
Johno Crawford
Feb 08 2018 19:20
@kuujo pretty sure I got them all, I left comments on parts I was not certain
Feb 08 2018 22:41
whats the best way to purge an instance from the cluster. Currently what I noticed is we cannot alter the cluster configuration once established in a certain way. Especially removing nodes from cluster. The files stored on disk (.meta file, .log file, snapshot file) seems to have the cluster information. But since they are binary files cannot really muck with them.
Jordan Halterman
Feb 08 2018 23:57
Those files are internal to the Raft partitions. There’s no way to modify them manually in a way that doesn’t break consistency because they’re maintained though Raft, which requires replicating and applying the changes at specific points in logical time. That’s why they’re not written in an easily modifiable format.
In Atomix 2.1 to remove a node you just shut it down, but this is a feature that’s untested and experimental in Atomix. When you shutdown a data node, the node is removed from the replicated metadata, and Raft partitions are rebalanced. The Raft partitions then replicate their own configuration changes and new nodes are added/removed from each partition as necessary