chitchat
chitchat copied to clipboard
Cluster membership protocol with failure detection inspired by Cassandra and DynamoDB
This is motivated by this PR: https://github.com/quickwit-oss/quickwit/pull/1838 In Quickwit, we need to build members from pairs of (key, value) stored in `NodeState`. Being able to define a `build_from_node_state` method on...
Currently, this crate does not do much logging making it hard to see what's going on under the hood.
RIght now one needs to specify its public address. It can however, in some environment be a non-trivial thing to know. (k8s, using the :0 trick, etc.) Only the seed...
This crate looks super-cool; have you given any thought to how to allow nodes to have multiple addresses? For example, in a mixed IPv4 and IPv6 stack world, some nodes...
Currently, it's hard to test the different stages a node in a cluster can be in. It would be nice to have a kind of simulator built around `tokio::task` that...
Currently the scuttlebutt messages are not versioned. Even if these are transient messages, we might want to make changes that do not require to stop-restart all nodes at the same...
Unit tests are using manually cherry-picked port that do not overlap... That is a deep paper cut, but also it might break unit tests if the system has this port...
We probably need to implement a leave/join method for a node. - Leave: stops the node from gossiping to others, stops processing gossip messages - Join: puts back the node...