rabbitmq / ra

A Raft implementation for Erlang and Elixir that strives to be efficient and make it easier to use multiple Raft clusters in a single system.
Other
813 stars 96 forks source link

Write config to temp file then move #382

Closed kjnilsson closed 1 year ago

kjnilsson commented 1 year ago

Instead of overwriting in place. This should be safer and reduce chances of config file corruptions that could cause members to become unable to restart.

Fixes: https://github.com/rabbitmq/ra/issues/381

Also includes an optimisation that avoids spawning a process during init if all nodes are connected.

And it includes some log formatting unicode compatibility fixes.