diff -crB hbase-0.90.3/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java hbase-0.90.3.new/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java *** hbase-0.90.3/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java 2011-05-08 04:17:08.000000000 +0800 --- hbase-0.90.3.new/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java 2011-10-20 21:45:32.000000000 +0800 *************** *** 849,854 **** --- 849,858 ---- LOG.info("Master passed us address to use. Was=" + this.serverInfo.getServerAddress() + ", Now=" + hsa.toString()); this.serverInfo.setServerAddress(hsa); + ZKUtil.setAddressAndWatch(zooKeeper, + ZKUtil.joinZNode(zooKeeper.rsZNode, ZKUtil.getNodeName(serverInfo)), + this.serverInfo.getServerAddress()); + continue; } String value = e.getValue().toString();