Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
ZookeeperDiscoveryImpl#startJoin method implementation creates two zk nodes: one with joining node discovery data and another one with joining node id.
If joining node fails in between its joining node data will be kept by ZooKeeper until explicit removal.
For now there is no mechanism implementing such removal but it should be implemented to cover this corner case.
It may be implemented in form of timer which removes joining node data with some significant timeout to avoid deleting joining data of alive nodes that are in the middle of join procedure (and, for instance, got frozen before creating alive zk node).