public static boolean removeRejoinNodeIndicatorForHost ( ZooKeeper zk , int hostId ) { try { Stat stat = new Stat ( ) ; final int rejoiningHost = ByteBuffer . wrap ( zk . getData ( rejoin_node_blocker , false , stat ) ) . getInt ( ) ; if ( hostId == rejoiningHost ) { zk . delete ( rejoin_node_blocker , stat . getVersion ( ) ) ; return true ; } } catch ( KeeperException e ) { if ( e . code ( ) == KeeperException . Code . NONODE || e . code ( ) == KeeperException . Code . BADVERSION ) { // Okay if the rejoin blocker for the given hostId is already gone. return true ; } } catch ( InterruptedException e ) { return false ; } return false ; }
Removes the rejoin blocker if the current rejoin blocker contains the given host ID .