You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2012/04/16 23:55:58 UTC

svn commit: r1326814 - /hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java

Author: tedyu
Date: Mon Apr 16 21:55:57 2012
New Revision: 1326814

URL: http://svn.apache.org/viewvc?rev=1326814&view=rev
Log:
HBASE-5780 Fix race in HBase regionserver startup vs ZK SASL authentication (Shaneal)

Modified:
    hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java

Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java?rev=1326814&r1=1326813&r2=1326814&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java Mon Apr 16 21:55:57 2012
@@ -75,6 +75,12 @@ public abstract class ZooKeeperNodeTrack
    * or {@link #getData(boolean)} to get the data of the node if it is available.
    */
   public synchronized void start() {
+    try {
+      ZKUtil.waitForZKConnectionIfAuthenticating(watcher);
+    } catch (InterruptedException e) {
+      throw new IllegalStateException("ZookeeperNodeTracker on " + this.node 
+          + " interuppted while waiting for SASL Authentication", e);
+    }
     this.watcher.registerListener(this);
     try {
       if(ZKUtil.watchAndCheckExists(watcher, node)) {