Index: src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (revision 1291545) +++ src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (working copy) @@ -183,6 +183,15 @@ } /** + * Add a map of region plans. + */ + public void addPlan(Map plans) { + synchronized (regionPlans) { + regionPlans.putAll(plans); + } + } + + /** * Reset all unassigned znodes. Called on startup of master. * Call {@link #assignAllUserRegions()} after root and meta have been assigned. * @throws IOException @@ -917,6 +926,15 @@ 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)); + } + this.addPlan(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);