curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jay Zarfoss (JIRA)" <>
Subject [jira] [Commented] (CURATOR-44) LeaderSelector does not assign leader randomly
Date Fri, 19 Jul 2013 01:58:48 GMT


Jay Zarfoss commented on CURATOR-44:

I'm thinking it may be best to simply update the Javadoc for LeaderSelector and then consider
some new Leader-election paradigm.

In order for leadership to really be random for a given group of nodes, we'd need to randomly
re-evaluate the leadership every time a node entered the group.  Otherwise in the pathological
case where node A always starts two minutes before node B, node A will always be the leader
for everything (which is probably what you're experiencing).     So for leadership to be random
in this case that means that node A would need to get voted off the island, which to me implies
something like a "loseLeadership()" method in the callback, which probably would warrant a
new Leadership paradigm like "VulnerableLeaderSelector".  

> LeaderSelector does not assign leader randomly
> ----------------------------------------------
>                 Key: CURATOR-44
>                 URL:
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Recipes
>    Affects Versions: 2.0.1-incubating
>            Reporter: Anders Wallgren
> The javadoc for LeaderSelector says leadership is assigned randomly but this does not
appear to be the case.
> A fair mutex is used so it appears that leaders are selected in the order that they attempt
to acquire the mutex.
> This probably wouldn't be much more than a documentation issue except that it tends to
concentrate leaders on one node in the cluster when each node participates in more than one
election (and assuming the node starts the LeaderSelectors right around the time the node
comes up, which is the case in our usage).

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message