Index: src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (revision 1244405) +++ src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (working copy) @@ -58,6 +58,7 @@ import org.apache.hadoop.hbase.executor.EventHandler.EventType; import org.apache.hadoop.hbase.executor.ExecutorService; import org.apache.hadoop.hbase.executor.RegionTransitionData; +import org.apache.hadoop.hbase.master.AssignmentManager.RegionState; import org.apache.hadoop.hbase.master.LoadBalancer.RegionPlan; import org.apache.hadoop.hbase.master.handler.ClosedRegionHandler; import org.apache.hadoop.hbase.master.handler.DisableTableHandler; @@ -917,6 +918,17 @@ states.add(forceRegionStateToOffline(region)); } } + // Add region plans, so we can updateTimers when one region opened, in order + // to unnecessary timeout on RIT + Map plans = new HashMap(); + for (HRegionInfo region : regions) { + plans.put(region.getEncodedName(), new RegionPlan(region, null, + destination)); + } + synchronized (regionPlans) { + this.regionPlans.putAll(plans); + } + // Presumption is that only this thread will be updating the state at this // time; i.e. handlers on backend won't be trying to set it to OPEN, etc. AtomicInteger counter = new AtomicInteger(0);