[erlang-questions] gen_leader usage/pointers

Andrew Thompson <>
Thu Sep 23 01:02:03 CEST 2010


On Thu, Sep 23, 2010 at 12:52:43AM +0200, Piotr Kaleta wrote:
>  First of all, few (if not all) versions of gen_leader implementations
> has been gathered on github here:
> http://github.com/KirinDave/gen_leader_revival.
> As README says, you should use the 'combined_version'.
> 
> A good starting point with tutorial is located at:
> http://order1.blogspot.com/2007/10/scalable-data-structures-in-erlang-and.html
> 
> However you should remember that current versions of gen_leader works in
> a way that you have to statically define the list of nodes that can
> become master in case of other nodes failure. Current implementations
> however, are incapable of adding nodes that might claim master role in
> future, at runtime. This makes gen_leader incapable of working in
> unstable environments when all of master nodes might go down for some
> reason.
> 

KirinDave's fork might lack this functionality, but abecciu's fork
supports adding candidates at runtime (as well as some additional fixes
that Dave hasn't merged). We've also cleaned gen_leader up to be an
actual erlang project (rebar/makefile, appfile, etc).

Andrew


More information about the erlang-questions mailing list