[erlang-questions] gen_leader status

Geoff Cant nem@REDACTED
Tue May 20 00:44:35 CEST 2014


I re-implemented the Async Bully algorithm a couple of years ago - the code is here: https://github.com/ngmoco/gl_async_bully

It's probably only useful as a reference - it had one production deployment, but contains shortcomings such as not being able to modify the set of candidate nodes while online.

I am personally dubious of the correctness of all the Erlang leader election libraries I'm aware of, for either code quality issues or lack of quickcheck tests - having tried to implement this I now understand how hard it is to get right. My own implementation lacks tests and I include it in the list of implementations I'm dubious of :)

Even the academic literature on distributed leader election seems pretty light, or leaves important operational concerns (such as modifying the candidate node set) unspecified; when you add these operations to the protocol, you're no-longer running the algorithm that was proved correct in the paper.

Cheers,
--
Geoff Cant

On 2014-05-16, at 14:48 , Mark Allen <mallen@REDACTED> wrote:

> Is https://github.com/chenyu468/gen_leader_revival the "best" repo for a
> leader election behavior?
> 
> Is there a better (more up-to-date) fork of this or some other
> implementation that we should consider instead?
> 
> Thanks.
> 
> Mark
> 
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://erlang.org/mailman/listinfo/erlang-questions








More information about the erlang-questions mailing list