Index: main/java/org/apache/hadoop/hbase/master/AssignmentManager.java =================================================================== --- main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (revision 1130382) +++ main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (working copy) @@ -1848,6 +1848,15 @@ } catch (KeeperException e) { LOG.warn("Exception while validating RIT during split report", e); } + synchronized (this.regions) { + //one daughter is already online, do nothing + HServerInfo hsia = this.regions.get(a); + if (hsia != null){ + LOG.warn("Trying to process the split of " +a.getEncodedName()+ ", " + + "but it was already done and one daughter is on region server " + hsia); + return; + } + } regionOnline(a, hsi); regionOnline(b, hsi); Index: main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java =================================================================== --- main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (revision 1130382) +++ main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (working copy) @@ -736,6 +736,7 @@ // This will be caught and handled as a fatal error in run() throw ioe; } + LOG.warn("RemoteException connecting to master", ioe); // Couldn't connect to the master, get location from zk and reconnect // Method blocks until new master is found or we are stopped getMaster();