These are chat archives for atomix/atomix

3rd
Oct 2018
Jordan Halterman
@kuujo
Oct 03 2018 01:51
:+1:
Mike Hearn
@mikehearn
Oct 03 2018 08:49
hi i'm curious if atomix raft has gained support in recent times for the case of 'infinite' state.
we have a use case where we want to gain consensus over what is effectively an ever growing set. so joining a node to the network should sync only what it missed since it was offline, not the entire dataset
Jordan Halterman
@kuujo
Oct 03 2018 21:10
@mikehearn the old Raft implementation would have been much better suited to that. It kept “all” entries, remove entries that were redundant, and replicated only changes that hadn’t been seen by other nodes. The problem was while determining which entries are redundant for a set is easy, doing so for more complex state machines like leader elections, sorted lists, semaphores, etc is not. And managing entries for deletes - which have to be retained until all nodes have seen them - is complicated and error prone.
Luca Burgazzoli
@lburgazzoli
Oct 03 2018 21:23
@kuujo I've read on twitter that 3.0.6 "support for DNS-based service discovery (a la k8s)" , is there any documentation or example about this ?
Jordan Halterman
@kuujo
Oct 03 2018 22:05
The Helm charts are on the website and I’m working on the documentation right now. Should be up this evening
Jordan Halterman
@kuujo
Oct 03 2018 23:23
It may not be as cool as it sounds though. Kubernetes primarily does service discovery via DNS, i.e. the IPs of pods change but the hostname stays the same. Atomix now just does DNS lookups each time it establishes a new connection to a peer, so an Atomix node can have a fixed ID and host but move locations and Atomix will treat it as the same node