You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2010/10/05 00:27:40 UTC

svn commit: r1004462 - in /hbase/trunk/src: main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java main/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperNodeTracker.java test/java/org/apache/hadoop/hbase/TestZooKeeper.java

Author: stack
Date: Mon Oct  4 22:27:40 2010
New Revision: 1004462

URL: http://svn.apache.org/viewvc?rev=1004462&view=rev
Log:
Adding even more logging to figure why we're reading old root region location though its been updated in zk -- for failing TestZooKeeper

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

Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java?rev=1004462&r1=1004461&r2=1004462&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java Mon Oct  4 22:27:40 2010
@@ -28,6 +28,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
@@ -457,8 +458,7 @@ public class ZKUtil {
   throws KeeperException {
     try {
       byte [] data = zkw.getZooKeeper().getData(znode, null, null);
-      LOG.debug(zkw.prefix("Retrieved " + data.length +
-        " bytes of data from znode " + znode));
+      logRetrievedMsg(zkw, znode, data, false);
       return data;
     } catch (KeeperException.NoNodeException e) {
       LOG.debug(zkw.prefix("Unable to get data of znode " + znode + " " +
@@ -490,8 +490,7 @@ public class ZKUtil {
   throws KeeperException {
     try {
       byte [] data = zkw.getZooKeeper().getData(znode, zkw, null);
-      LOG.debug(zkw.prefix("Retrieved " + data.length +
-        " bytes of data from znode " + znode + " and set a watcher"));
+      logRetrievedMsg(zkw, znode, data, true);
       return data;
     } catch (KeeperException.NoNodeException e) {
       LOG.debug(zkw.prefix("Unable to get data of znode " + znode + " " +
@@ -528,8 +527,7 @@ public class ZKUtil {
   throws KeeperException {
     try {
       byte [] data = zkw.getZooKeeper().getData(znode, zkw, stat);
-      LOG.debug(zkw.prefix("Retrieved " + data.length +
-        " bytes of data from znode " + znode));
+      logRetrievedMsg(zkw, znode, data, false);
       return data;
     } catch (KeeperException.NoNodeException e) {
       LOG.debug(zkw.prefix("Unable to get data of znode " + znode + " " +
@@ -1007,4 +1005,13 @@ public class ZKUtil {
     socket.close();
     return res.toArray(new String[res.size()]);
   }
+
+  private static void logRetrievedMsg(final ZooKeeperWatcher zkw,
+      final String znode, final byte [] data, final boolean watcherSet) {
+    if (!LOG.isDebugEnabled()) return;
+    LOG.debug(zkw.prefix("Retrieved " + ((data == null)? 0: data.length) +
+      " byte(s) of data from znode " + znode +
+      (watcherSet? " and set watcher; ": "; data=") +
+      (data == null? "null": StringUtils.abbreviate(Bytes.toString(data), 128))));
+  }
 }

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=1004462&r1=1004461&r2=1004462&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 Oct  4 22:27:40 2010
@@ -137,18 +137,17 @@ public abstract class ZooKeeperNodeTrack
 
   @Override
   public synchronized void nodeCreated(String path) {
-    if(path.equals(node)) {
-      try {
-        byte [] data = ZKUtil.getDataAndWatch(watcher, node);
-        if(data != null) {
-          this.data = data;
-          notifyAll();
-        } else {
-          nodeDeleted(path);
-        }
-      } catch(KeeperException e) {
-        abortable.abort("Unexpected exception handling nodeCreated event", e);
+    if (!path.equals(node)) return;
+    try {
+      byte [] data = ZKUtil.getDataAndWatch(watcher, node);
+      if (data != null) {
+        this.data = data;
+        notifyAll();
+      } else {
+        nodeDeleted(path);
       }
+    } catch(KeeperException e) {
+      abortable.abort("Unexpected exception handling nodeCreated event", e);
     }
   }
 

Modified: hbase/trunk/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java?rev=1004462&r1=1004461&r2=1004462&view=diff
==============================================================================
--- hbase/trunk/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java (original)
+++ hbase/trunk/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java Mon Oct  4 22:27:40 2010
@@ -137,12 +137,14 @@ public class TestZooKeeper {
     HTableDescriptor desc = new HTableDescriptor(tableName);
     HColumnDescriptor family = new HColumnDescriptor("fam");
     desc.addFamily(family);
+    LOG.info("Creating table " + tableName);
     admin.createTable(desc);
 
     HTable table = new HTable(conf, tableName);
     Put put = new Put(Bytes.toBytes("testrow"));
     put.add(Bytes.toBytes("fam"),
         Bytes.toBytes("col"), Bytes.toBytes("testdata"));
+    LOG.info("Putting table " + tableName);
     table.put(put);
 
   }