You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently a follower node fetches a list of seeds once and attempts to join the cluster using this address list. If the seed list out of date because of leader malfunction or cluster partitioning, this operation may "hang" indefinitely.
Discovery actor should use a timer and if joining the cluster does not succeed within specified time it should cancel the ongoing joining process (invoking Cluster.joinSeedNodes(Seq()) does this) and re-fetch seed list from etcd, hoping that (a new) leader will eventually publish a correct list.
The text was updated successfully, but these errors were encountered:
I've learned by further reading of ClusterCoreDemon source that Cluster.joinSeedNodes(Seq()) would be in fact ignored. However invoking joinSeedNodes with a non-empty list will interrupt current SeedNodeProcess, which means we can simply fetch another list and retry.
Currently a follower node fetches a list of seeds once and attempts to join the cluster using this address list. If the seed list out of date because of leader malfunction or cluster partitioning, this operation may "hang" indefinitely.
Discovery actor should use a timer and if joining the cluster does not succeed within specified time it should cancel the ongoing joining process (invoking
Cluster.joinSeedNodes(Seq())
does this) and re-fetch seed list from etcd, hoping that (a new) leader will eventually publish a correct list.The text was updated successfully, but these errors were encountered: