diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java index d9345d8..be7287d 100644 --- hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java +++ hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java @@ -1632,6 +1632,11 @@ public class AssignmentManager extends ZooKeeperListener { * @param regionInfo */ public void regionOffline(final HRegionInfo regionInfo) { + if (regionStates.isRegionInState(regionInfo, State.MERGED, State.SPLIT, State.OFFLINE)) { + LOG.info("Try to offline region which is alreay at MERGED/SPLIT/OFFLINE state" + + regionInfo + ", skip"); + return; + } regionOffline(regionInfo, null); }