http://git-wip-us.apache.org/repos/asf/hbase/blob/a3c5a744/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProcedureProtos.java
----------------------------------------------------------------------
diff --git 
a/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProcedureProtos.java
 
b/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProcedureProtos.java
index e1c8d97..d7bbd05 100644
--- 
a/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProcedureProtos.java
+++ 
b/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProcedureProtos.java
@@ -1734,201 +1734,100 @@ public final class MasterProcedureProtos {
   }
 
   /**
-   * Protobuf enum {@code hbase.pb.DispatchMergingRegionsState}
+   * Protobuf enum {@code hbase.pb.MergeTableRegionsState}
    */
-  public enum DispatchMergingRegionsState
+  public enum MergeTableRegionsState
       implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
     /**
-     * <code>DISPATCH_MERGING_REGIONS_PREPARE = 1;</code>
+     * <code>MERGE_TABLE_REGIONS_PREPARE = 1;</code>
      */
-    DISPATCH_MERGING_REGIONS_PREPARE(1),
+    MERGE_TABLE_REGIONS_PREPARE(1),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_PRE_OPERATION = 2;</code>
+     * <code>MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS = 2;</code>
      */
-    DISPATCH_MERGING_REGIONS_PRE_OPERATION(2),
+    MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS(2),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS = 3;</code>
+     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION = 3;</code>
      */
-    DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS(3),
+    MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION(3),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS = 4;</code>
+     * <code>MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE = 4;</code>
      */
-    DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS(4),
+    MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE(4),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_POST_OPERATION = 5;</code>
+     * <code>MERGE_TABLE_REGIONS_CLOSE_REGIONS = 5;</code>
      */
-    DISPATCH_MERGING_REGIONS_POST_OPERATION(5),
-    ;
-
+    MERGE_TABLE_REGIONS_CLOSE_REGIONS(5),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_PREPARE = 1;</code>
+     * <code>MERGE_TABLE_REGIONS_CREATE_MERGED_REGION = 6;</code>
      */
-    public static final int DISPATCH_MERGING_REGIONS_PREPARE_VALUE = 1;
+    MERGE_TABLE_REGIONS_CREATE_MERGED_REGION(6),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_PRE_OPERATION = 2;</code>
+     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION = 7;</code>
      */
-    public static final int DISPATCH_MERGING_REGIONS_PRE_OPERATION_VALUE = 2;
+    MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION(7),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS = 3;</code>
+     * <code>MERGE_TABLE_REGIONS_UPDATE_META = 8;</code>
      */
-    public static final int 
DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS_VALUE = 3;
+    MERGE_TABLE_REGIONS_UPDATE_META(8),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS = 4;</code>
+     * <code>MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION = 9;</code>
      */
-    public static final int DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS_VALUE = 4;
+    MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION(9),
     /**
-     * <code>DISPATCH_MERGING_REGIONS_POST_OPERATION = 5;</code>
+     * <code>MERGE_TABLE_REGIONS_OPEN_MERGED_REGION = 10;</code>
      */
-    public static final int DISPATCH_MERGING_REGIONS_POST_OPERATION_VALUE = 5;
-
-
-    public final int getNumber() {
-      return value;
-    }
-
+    MERGE_TABLE_REGIONS_OPEN_MERGED_REGION(10),
     /**
-     * @deprecated Use {@link #forNumber(int)} instead.
+     * <code>MERGE_TABLE_REGIONS_POST_OPERATION = 11;</code>
      */
-    @java.lang.Deprecated
-    public static DispatchMergingRegionsState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static DispatchMergingRegionsState forNumber(int value) {
-      switch (value) {
-        case 1: return DISPATCH_MERGING_REGIONS_PREPARE;
-        case 2: return DISPATCH_MERGING_REGIONS_PRE_OPERATION;
-        case 3: return DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS;
-        case 4: return DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS;
-        case 5: return DISPATCH_MERGING_REGIONS_POST_OPERATION;
-        default: return null;
-      }
-    }
-
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<DispatchMergingRegionsState>
-        internalGetValueMap() {
-      return internalValueMap;
-    }
-    private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        DispatchMergingRegionsState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<DispatchMergingRegionsState>()
 {
-            public DispatchMergingRegionsState findValueByNumber(int number) {
-              return DispatchMergingRegionsState.forNumber(number);
-            }
-          };
-
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
-        getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
-    }
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptorForType() {
-      return getDescriptor();
-    }
-    public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(14);
-    }
-
-    private static final DispatchMergingRegionsState[] VALUES = values();
-
-    public static DispatchMergingRegionsState valueOf(
-        
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
-      if (desc.getType() != getDescriptor()) {
-        throw new java.lang.IllegalArgumentException(
-          "EnumValueDescriptor is not for this type.");
-      }
-      return VALUES[desc.getIndex()];
-    }
-
-    private final int value;
-
-    private DispatchMergingRegionsState(int value) {
-      this.value = value;
-    }
-
-    // 
@@protoc_insertion_point(enum_scope:hbase.pb.DispatchMergingRegionsState)
-  }
+    MERGE_TABLE_REGIONS_POST_OPERATION(11),
+    ;
 
-  /**
-   * Protobuf enum {@code hbase.pb.SplitTableRegionState}
-   */
-  public enum SplitTableRegionState
-      implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
-    /**
-     * <code>SPLIT_TABLE_REGION_PREPARE = 1;</code>
-     */
-    SPLIT_TABLE_REGION_PREPARE(1),
-    /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION = 2;</code>
-     */
-    SPLIT_TABLE_REGION_PRE_OPERATION(2),
-    /**
-     * <code>SPLIT_TABLE_REGION_CLOSE_PARENT_REGION = 3;</code>
-     */
-    SPLIT_TABLE_REGION_CLOSE_PARENT_REGION(3),
-    /**
-     * <code>SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS = 4;</code>
-     */
-    SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS(4),
-    /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR = 5;</code>
-     */
-    SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR(5),
-    /**
-     * <code>SPLIT_TABLE_REGION_UPDATE_META = 6;</code>
-     */
-    SPLIT_TABLE_REGION_UPDATE_META(6),
-    /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR = 7;</code>
-     */
-    SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR(7),
     /**
-     * <code>SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS = 8;</code>
+     * <code>MERGE_TABLE_REGIONS_PREPARE = 1;</code>
      */
-    SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS(8),
+    public static final int MERGE_TABLE_REGIONS_PREPARE_VALUE = 1;
     /**
-     * <code>SPLIT_TABLE_REGION_POST_OPERATION = 9;</code>
+     * <code>MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS = 2;</code>
      */
-    SPLIT_TABLE_REGION_POST_OPERATION(9),
-    ;
-
+    public static final int MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS_VALUE = 
2;
     /**
-     * <code>SPLIT_TABLE_REGION_PREPARE = 1;</code>
+     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION = 3;</code>
      */
-    public static final int SPLIT_TABLE_REGION_PREPARE_VALUE = 1;
+    public static final int MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION_VALUE = 3;
     /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION = 2;</code>
+     * <code>MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE = 4;</code>
      */
-    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_VALUE = 2;
+    public static final int MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE_VALUE 
= 4;
     /**
-     * <code>SPLIT_TABLE_REGION_CLOSE_PARENT_REGION = 3;</code>
+     * <code>MERGE_TABLE_REGIONS_CLOSE_REGIONS = 5;</code>
      */
-    public static final int SPLIT_TABLE_REGION_CLOSE_PARENT_REGION_VALUE = 3;
+    public static final int MERGE_TABLE_REGIONS_CLOSE_REGIONS_VALUE = 5;
     /**
-     * <code>SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS = 4;</code>
+     * <code>MERGE_TABLE_REGIONS_CREATE_MERGED_REGION = 6;</code>
      */
-    public static final int SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS_VALUE = 
4;
+    public static final int MERGE_TABLE_REGIONS_CREATE_MERGED_REGION_VALUE = 6;
     /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR = 5;</code>
+     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION = 7;</code>
      */
-    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR_VALUE 
= 5;
+    public static final int 
MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION_VALUE = 7;
     /**
-     * <code>SPLIT_TABLE_REGION_UPDATE_META = 6;</code>
+     * <code>MERGE_TABLE_REGIONS_UPDATE_META = 8;</code>
      */
-    public static final int SPLIT_TABLE_REGION_UPDATE_META_VALUE = 6;
+    public static final int MERGE_TABLE_REGIONS_UPDATE_META_VALUE = 8;
     /**
-     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR = 7;</code>
+     * <code>MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION = 9;</code>
      */
-    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR_VALUE 
= 7;
+    public static final int 
MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION_VALUE = 9;
     /**
-     * <code>SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS = 8;</code>
+     * <code>MERGE_TABLE_REGIONS_OPEN_MERGED_REGION = 10;</code>
      */
-    public static final int SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS_VALUE = 8;
+    public static final int MERGE_TABLE_REGIONS_OPEN_MERGED_REGION_VALUE = 10;
     /**
-     * <code>SPLIT_TABLE_REGION_POST_OPERATION = 9;</code>
+     * <code>MERGE_TABLE_REGIONS_POST_OPERATION = 11;</code>
      */
-    public static final int SPLIT_TABLE_REGION_POST_OPERATION_VALUE = 9;
+    public static final int MERGE_TABLE_REGIONS_POST_OPERATION_VALUE = 11;
 
 
     public final int getNumber() {
@@ -1939,34 +1838,36 @@ public final class MasterProcedureProtos {
      * @deprecated Use {@link #forNumber(int)} instead.
      */
     @java.lang.Deprecated
-    public static SplitTableRegionState valueOf(int value) {
+    public static MergeTableRegionsState valueOf(int value) {
       return forNumber(value);
     }
 
-    public static SplitTableRegionState forNumber(int value) {
+    public static MergeTableRegionsState forNumber(int value) {
       switch (value) {
-        case 1: return SPLIT_TABLE_REGION_PREPARE;
-        case 2: return SPLIT_TABLE_REGION_PRE_OPERATION;
-        case 3: return SPLIT_TABLE_REGION_CLOSE_PARENT_REGION;
-        case 4: return SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS;
-        case 5: return SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR;
-        case 6: return SPLIT_TABLE_REGION_UPDATE_META;
-        case 7: return SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR;
-        case 8: return SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS;
-        case 9: return SPLIT_TABLE_REGION_POST_OPERATION;
+        case 1: return MERGE_TABLE_REGIONS_PREPARE;
+        case 2: return MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS;
+        case 3: return MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION;
+        case 4: return MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE;
+        case 5: return MERGE_TABLE_REGIONS_CLOSE_REGIONS;
+        case 6: return MERGE_TABLE_REGIONS_CREATE_MERGED_REGION;
+        case 7: return MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION;
+        case 8: return MERGE_TABLE_REGIONS_UPDATE_META;
+        case 9: return MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION;
+        case 10: return MERGE_TABLE_REGIONS_OPEN_MERGED_REGION;
+        case 11: return MERGE_TABLE_REGIONS_POST_OPERATION;
         default: return null;
       }
     }
 
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<SplitTableRegionState>
+    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MergeTableRegionsState>
         internalGetValueMap() {
       return internalValueMap;
     }
     private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        SplitTableRegionState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<SplitTableRegionState>()
 {
-            public SplitTableRegionState findValueByNumber(int number) {
-              return SplitTableRegionState.forNumber(number);
+        MergeTableRegionsState> internalValueMap =
+          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MergeTableRegionsState>()
 {
+            public MergeTableRegionsState findValueByNumber(int number) {
+              return MergeTableRegionsState.forNumber(number);
             }
           };
 
@@ -1980,12 +1881,12 @@ public final class MasterProcedureProtos {
     }
     public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(15);
+      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(14);
     }
 
-    private static final SplitTableRegionState[] VALUES = values();
+    private static final MergeTableRegionsState[] VALUES = values();
 
-    public static SplitTableRegionState valueOf(
+    public static MergeTableRegionsState valueOf(
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
       if (desc.getType() != getDescriptor()) {
         throw new java.lang.IllegalArgumentException(
@@ -1996,116 +1897,100 @@ public final class MasterProcedureProtos {
 
     private final int value;
 
-    private SplitTableRegionState(int value) {
+    private MergeTableRegionsState(int value) {
       this.value = value;
     }
 
-    // @@protoc_insertion_point(enum_scope:hbase.pb.SplitTableRegionState)
+    // @@protoc_insertion_point(enum_scope:hbase.pb.MergeTableRegionsState)
   }
 
   /**
-   * Protobuf enum {@code hbase.pb.MergeTableRegionsState}
+   * Protobuf enum {@code hbase.pb.SplitTableRegionState}
    */
-  public enum MergeTableRegionsState
+  public enum SplitTableRegionState
       implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
     /**
-     * <code>MERGE_TABLE_REGIONS_PREPARE = 1;</code>
-     */
-    MERGE_TABLE_REGIONS_PREPARE(1),
-    /**
-     * <code>MERGE_TABLE_REGIONS_PRE_OPERATION = 2;</code>
-     */
-    MERGE_TABLE_REGIONS_PRE_OPERATION(2),
-    /**
-     * <code>MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS = 3;</code>
+     * <code>SPLIT_TABLE_REGION_PREPARE = 1;</code>
      */
-    MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS(3),
+    SPLIT_TABLE_REGION_PREPARE(1),
     /**
-     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION = 4;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION = 2;</code>
      */
-    MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION(4),
+    SPLIT_TABLE_REGION_PRE_OPERATION(2),
     /**
-     * <code>MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE = 5;</code>
+     * <code>SPLIT_TABLE_REGION_SET_SPLITTING_TABLE_STATE = 3;</code>
      */
-    MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE(5),
+    SPLIT_TABLE_REGION_SET_SPLITTING_TABLE_STATE(3),
     /**
-     * <code>MERGE_TABLE_REGIONS_CLOSE_REGIONS = 6;</code>
+     * <code>SPLIT_TABLE_REGION_CLOSE_PARENT_REGION = 4;</code>
      */
-    MERGE_TABLE_REGIONS_CLOSE_REGIONS(6),
+    SPLIT_TABLE_REGION_CLOSE_PARENT_REGION(4),
     /**
-     * <code>MERGE_TABLE_REGIONS_CREATE_MERGED_REGION = 7;</code>
+     * <code>SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS = 5;</code>
      */
-    MERGE_TABLE_REGIONS_CREATE_MERGED_REGION(7),
+    SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS(5),
     /**
-     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION = 8;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR = 6;</code>
      */
-    MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION(8),
+    SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR(6),
     /**
-     * <code>MERGE_TABLE_REGIONS_UPDATE_META = 9;</code>
+     * <code>SPLIT_TABLE_REGION_UPDATE_META = 7;</code>
      */
-    MERGE_TABLE_REGIONS_UPDATE_META(9),
+    SPLIT_TABLE_REGION_UPDATE_META(7),
     /**
-     * <code>MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION = 10;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR = 8;</code>
      */
-    MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION(10),
+    SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR(8),
     /**
-     * <code>MERGE_TABLE_REGIONS_OPEN_MERGED_REGION = 11;</code>
+     * <code>SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS = 9;</code>
      */
-    MERGE_TABLE_REGIONS_OPEN_MERGED_REGION(11),
+    SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS(9),
     /**
-     * <code>MERGE_TABLE_REGIONS_POST_OPERATION = 12;</code>
+     * <code>SPLIT_TABLE_REGION_POST_OPERATION = 10;</code>
      */
-    MERGE_TABLE_REGIONS_POST_OPERATION(12),
+    SPLIT_TABLE_REGION_POST_OPERATION(10),
     ;
 
     /**
-     * <code>MERGE_TABLE_REGIONS_PREPARE = 1;</code>
-     */
-    public static final int MERGE_TABLE_REGIONS_PREPARE_VALUE = 1;
-    /**
-     * <code>MERGE_TABLE_REGIONS_PRE_OPERATION = 2;</code>
-     */
-    public static final int MERGE_TABLE_REGIONS_PRE_OPERATION_VALUE = 2;
-    /**
-     * <code>MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS = 3;</code>
+     * <code>SPLIT_TABLE_REGION_PREPARE = 1;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS_VALUE = 
3;
+    public static final int SPLIT_TABLE_REGION_PREPARE_VALUE = 1;
     /**
-     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION = 4;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION = 2;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION_VALUE = 4;
+    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_VALUE = 2;
     /**
-     * <code>MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE = 5;</code>
+     * <code>SPLIT_TABLE_REGION_SET_SPLITTING_TABLE_STATE = 3;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE_VALUE 
= 5;
+    public static final int SPLIT_TABLE_REGION_SET_SPLITTING_TABLE_STATE_VALUE 
= 3;
     /**
-     * <code>MERGE_TABLE_REGIONS_CLOSE_REGIONS = 6;</code>
+     * <code>SPLIT_TABLE_REGION_CLOSE_PARENT_REGION = 4;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_CLOSE_REGIONS_VALUE = 6;
+    public static final int SPLIT_TABLE_REGION_CLOSE_PARENT_REGION_VALUE = 4;
     /**
-     * <code>MERGE_TABLE_REGIONS_CREATE_MERGED_REGION = 7;</code>
+     * <code>SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS = 5;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_CREATE_MERGED_REGION_VALUE = 7;
+    public static final int SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS_VALUE = 
5;
     /**
-     * <code>MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION = 8;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR = 6;</code>
      */
-    public static final int 
MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION_VALUE = 8;
+    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR_VALUE 
= 6;
     /**
-     * <code>MERGE_TABLE_REGIONS_UPDATE_META = 9;</code>
+     * <code>SPLIT_TABLE_REGION_UPDATE_META = 7;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_UPDATE_META_VALUE = 9;
+    public static final int SPLIT_TABLE_REGION_UPDATE_META_VALUE = 7;
     /**
-     * <code>MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION = 10;</code>
+     * <code>SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR = 8;</code>
      */
-    public static final int 
MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION_VALUE = 10;
+    public static final int SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR_VALUE 
= 8;
     /**
-     * <code>MERGE_TABLE_REGIONS_OPEN_MERGED_REGION = 11;</code>
+     * <code>SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS = 9;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_OPEN_MERGED_REGION_VALUE = 11;
+    public static final int SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS_VALUE = 9;
     /**
-     * <code>MERGE_TABLE_REGIONS_POST_OPERATION = 12;</code>
+     * <code>SPLIT_TABLE_REGION_POST_OPERATION = 10;</code>
      */
-    public static final int MERGE_TABLE_REGIONS_POST_OPERATION_VALUE = 12;
+    public static final int SPLIT_TABLE_REGION_POST_OPERATION_VALUE = 10;
 
 
     public final int getNumber() {
@@ -2116,37 +2001,35 @@ public final class MasterProcedureProtos {
      * @deprecated Use {@link #forNumber(int)} instead.
      */
     @java.lang.Deprecated
-    public static MergeTableRegionsState valueOf(int value) {
+    public static SplitTableRegionState valueOf(int value) {
       return forNumber(value);
     }
 
-    public static MergeTableRegionsState forNumber(int value) {
+    public static SplitTableRegionState forNumber(int value) {
       switch (value) {
-        case 1: return MERGE_TABLE_REGIONS_PREPARE;
-        case 2: return MERGE_TABLE_REGIONS_PRE_OPERATION;
-        case 3: return MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS;
-        case 4: return MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION;
-        case 5: return MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE;
-        case 6: return MERGE_TABLE_REGIONS_CLOSE_REGIONS;
-        case 7: return MERGE_TABLE_REGIONS_CREATE_MERGED_REGION;
-        case 8: return MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION;
-        case 9: return MERGE_TABLE_REGIONS_UPDATE_META;
-        case 10: return MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION;
-        case 11: return MERGE_TABLE_REGIONS_OPEN_MERGED_REGION;
-        case 12: return MERGE_TABLE_REGIONS_POST_OPERATION;
+        case 1: return SPLIT_TABLE_REGION_PREPARE;
+        case 2: return SPLIT_TABLE_REGION_PRE_OPERATION;
+        case 3: return SPLIT_TABLE_REGION_SET_SPLITTING_TABLE_STATE;
+        case 4: return SPLIT_TABLE_REGION_CLOSE_PARENT_REGION;
+        case 5: return SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS;
+        case 6: return SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_PONR;
+        case 7: return SPLIT_TABLE_REGION_UPDATE_META;
+        case 8: return SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_PONR;
+        case 9: return SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS;
+        case 10: return SPLIT_TABLE_REGION_POST_OPERATION;
         default: return null;
       }
     }
 
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MergeTableRegionsState>
+    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<SplitTableRegionState>
         internalGetValueMap() {
       return internalValueMap;
     }
     private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        MergeTableRegionsState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MergeTableRegionsState>()
 {
-            public MergeTableRegionsState findValueByNumber(int number) {
-              return MergeTableRegionsState.forNumber(number);
+        SplitTableRegionState> internalValueMap =
+          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<SplitTableRegionState>()
 {
+            public SplitTableRegionState findValueByNumber(int number) {
+              return SplitTableRegionState.forNumber(number);
             }
           };
 
@@ -2160,12 +2043,12 @@ public final class MasterProcedureProtos {
     }
     public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(16);
+      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(15);
     }
 
-    private static final MergeTableRegionsState[] VALUES = values();
+    private static final SplitTableRegionState[] VALUES = values();
 
-    public static MergeTableRegionsState valueOf(
+    public static SplitTableRegionState valueOf(
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
       if (desc.getType() != getDescriptor()) {
         throw new java.lang.IllegalArgumentException(
@@ -2176,11 +2059,11 @@ public final class MasterProcedureProtos {
 
     private final int value;
 
-    private MergeTableRegionsState(int value) {
+    private SplitTableRegionState(int value) {
       this.value = value;
     }
 
-    // @@protoc_insertion_point(enum_scope:hbase.pb.MergeTableRegionsState)
+    // @@protoc_insertion_point(enum_scope:hbase.pb.SplitTableRegionState)
   }
 
   /**
@@ -2321,7 +2204,7 @@ public final class MasterProcedureProtos {
     }
     public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(17);
+      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(16);
     }
 
     private static final ServerCrashState[] VALUES = values();
@@ -2344,443 +2227,56 @@ public final class MasterProcedureProtos {
     // @@protoc_insertion_point(enum_scope:hbase.pb.ServerCrashState)
   }
 
-  /**
-   * Protobuf enum {@code hbase.pb.RegionTransitionState}
-   */
-  public enum RegionTransitionState
-      implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
+  public interface CreateTableStateDataOrBuilder extends
+      // 
@@protoc_insertion_point(interface_extends:hbase.pb.CreateTableStateData)
+      org.apache.hadoop.hbase.shaded.com.google.protobuf.MessageOrBuilder {
+
     /**
-     * <code>REGION_TRANSITION_QUEUE = 1;</code>
+     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
      */
-    REGION_TRANSITION_QUEUE(1),
+    boolean hasUserInfo();
     /**
-     * <code>REGION_TRANSITION_DISPATCH = 2;</code>
+     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
      */
-    REGION_TRANSITION_DISPATCH(2),
+    
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation 
getUserInfo();
     /**
-     * <code>REGION_TRANSITION_FINISH = 3;</code>
+     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
      */
-    REGION_TRANSITION_FINISH(3),
-    ;
+    
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformationOrBuilder
 getUserInfoOrBuilder();
 
     /**
-     * <code>REGION_TRANSITION_QUEUE = 1;</code>
+     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
      */
-    public static final int REGION_TRANSITION_QUEUE_VALUE = 1;
+    boolean hasTableSchema();
     /**
-     * <code>REGION_TRANSITION_DISPATCH = 2;</code>
+     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
      */
-    public static final int REGION_TRANSITION_DISPATCH_VALUE = 2;
+    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableSchema 
getTableSchema();
     /**
-     * <code>REGION_TRANSITION_FINISH = 3;</code>
+     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
      */
-    public static final int REGION_TRANSITION_FINISH_VALUE = 3;
-
-
-    public final int getNumber() {
-      return value;
-    }
+    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableSchemaOrBuilder
 getTableSchemaOrBuilder();
 
     /**
-     * @deprecated Use {@link #forNumber(int)} instead.
+     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
      */
-    @java.lang.Deprecated
-    public static RegionTransitionState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RegionTransitionState forNumber(int value) {
-      switch (value) {
-        case 1: return REGION_TRANSITION_QUEUE;
-        case 2: return REGION_TRANSITION_DISPATCH;
-        case 3: return REGION_TRANSITION_FINISH;
-        default: return null;
-      }
-    }
-
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<RegionTransitionState>
-        internalGetValueMap() {
-      return internalValueMap;
-    }
-    private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        RegionTransitionState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<RegionTransitionState>()
 {
-            public RegionTransitionState findValueByNumber(int number) {
-              return RegionTransitionState.forNumber(number);
-            }
-          };
-
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
-        getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
-    }
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptorForType() {
-      return getDescriptor();
-    }
-    public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(18);
-    }
-
-    private static final RegionTransitionState[] VALUES = values();
-
-    public static RegionTransitionState valueOf(
-        
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
-      if (desc.getType() != getDescriptor()) {
-        throw new java.lang.IllegalArgumentException(
-          "EnumValueDescriptor is not for this type.");
-      }
-      return VALUES[desc.getIndex()];
-    }
-
-    private final int value;
-
-    private RegionTransitionState(int value) {
-      this.value = value;
-    }
-
-    // @@protoc_insertion_point(enum_scope:hbase.pb.RegionTransitionState)
-  }
-
-  /**
-   * Protobuf enum {@code hbase.pb.MoveRegionState}
-   */
-  public enum MoveRegionState
-      implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
+    
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 
+        getRegionInfoList();
     /**
-     * <code>MOVE_REGION_UNASSIGN = 1;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
      */
-    MOVE_REGION_UNASSIGN(1),
+    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getRegionInfo(int index);
     /**
-     * <code>MOVE_REGION_ASSIGN = 2;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
      */
-    MOVE_REGION_ASSIGN(2),
-    ;
-
+    int getRegionInfoCount();
     /**
-     * <code>MOVE_REGION_UNASSIGN = 1;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
      */
-    public static final int MOVE_REGION_UNASSIGN_VALUE = 1;
+    java.util.List<? extends 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder>
 
+        getRegionInfoOrBuilderList();
     /**
-     * <code>MOVE_REGION_ASSIGN = 2;</code>
-     */
-    public static final int MOVE_REGION_ASSIGN_VALUE = 2;
-
-
-    public final int getNumber() {
-      return value;
-    }
-
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
-    public static MoveRegionState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static MoveRegionState forNumber(int value) {
-      switch (value) {
-        case 1: return MOVE_REGION_UNASSIGN;
-        case 2: return MOVE_REGION_ASSIGN;
-        default: return null;
-      }
-    }
-
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MoveRegionState>
-        internalGetValueMap() {
-      return internalValueMap;
-    }
-    private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        MoveRegionState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<MoveRegionState>()
 {
-            public MoveRegionState findValueByNumber(int number) {
-              return MoveRegionState.forNumber(number);
-            }
-          };
-
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
-        getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
-    }
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptorForType() {
-      return getDescriptor();
-    }
-    public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(19);
-    }
-
-    private static final MoveRegionState[] VALUES = values();
-
-    public static MoveRegionState valueOf(
-        
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
-      if (desc.getType() != getDescriptor()) {
-        throw new java.lang.IllegalArgumentException(
-          "EnumValueDescriptor is not for this type.");
-      }
-      return VALUES[desc.getIndex()];
-    }
-
-    private final int value;
-
-    private MoveRegionState(int value) {
-      this.value = value;
-    }
-
-    // @@protoc_insertion_point(enum_scope:hbase.pb.MoveRegionState)
-  }
-
-  /**
-   * Protobuf enum {@code hbase.pb.GCRegionState}
-   */
-  public enum GCRegionState
-      implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
-    /**
-     * <code>GC_REGION_PREPARE = 1;</code>
-     */
-    GC_REGION_PREPARE(1),
-    /**
-     * <code>GC_REGION_ARCHIVE = 2;</code>
-     */
-    GC_REGION_ARCHIVE(2),
-    /**
-     * <code>GC_REGION_PURGE_METADATA = 3;</code>
-     */
-    GC_REGION_PURGE_METADATA(3),
-    ;
-
-    /**
-     * <code>GC_REGION_PREPARE = 1;</code>
-     */
-    public static final int GC_REGION_PREPARE_VALUE = 1;
-    /**
-     * <code>GC_REGION_ARCHIVE = 2;</code>
-     */
-    public static final int GC_REGION_ARCHIVE_VALUE = 2;
-    /**
-     * <code>GC_REGION_PURGE_METADATA = 3;</code>
-     */
-    public static final int GC_REGION_PURGE_METADATA_VALUE = 3;
-
-
-    public final int getNumber() {
-      return value;
-    }
-
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
-    public static GCRegionState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static GCRegionState forNumber(int value) {
-      switch (value) {
-        case 1: return GC_REGION_PREPARE;
-        case 2: return GC_REGION_ARCHIVE;
-        case 3: return GC_REGION_PURGE_METADATA;
-        default: return null;
-      }
-    }
-
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<GCRegionState>
-        internalGetValueMap() {
-      return internalValueMap;
-    }
-    private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        GCRegionState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<GCRegionState>()
 {
-            public GCRegionState findValueByNumber(int number) {
-              return GCRegionState.forNumber(number);
-            }
-          };
-
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
-        getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
-    }
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptorForType() {
-      return getDescriptor();
-    }
-    public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(20);
-    }
-
-    private static final GCRegionState[] VALUES = values();
-
-    public static GCRegionState valueOf(
-        
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
-      if (desc.getType() != getDescriptor()) {
-        throw new java.lang.IllegalArgumentException(
-          "EnumValueDescriptor is not for this type.");
-      }
-      return VALUES[desc.getIndex()];
-    }
-
-    private final int value;
-
-    private GCRegionState(int value) {
-      this.value = value;
-    }
-
-    // @@protoc_insertion_point(enum_scope:hbase.pb.GCRegionState)
-  }
-
-  /**
-   * Protobuf enum {@code hbase.pb.GCMergedRegionsState}
-   */
-  public enum GCMergedRegionsState
-      implements 
org.apache.hadoop.hbase.shaded.com.google.protobuf.ProtocolMessageEnum {
-    /**
-     * <code>GC_MERGED_REGIONS_PREPARE = 1;</code>
-     */
-    GC_MERGED_REGIONS_PREPARE(1),
-    /**
-     * <code>GC_MERGED_REGIONS_PURGE = 2;</code>
-     */
-    GC_MERGED_REGIONS_PURGE(2),
-    /**
-     * <code>GC_REGION_EDIT_METADATA = 3;</code>
-     */
-    GC_REGION_EDIT_METADATA(3),
-    ;
-
-    /**
-     * <code>GC_MERGED_REGIONS_PREPARE = 1;</code>
-     */
-    public static final int GC_MERGED_REGIONS_PREPARE_VALUE = 1;
-    /**
-     * <code>GC_MERGED_REGIONS_PURGE = 2;</code>
-     */
-    public static final int GC_MERGED_REGIONS_PURGE_VALUE = 2;
-    /**
-     * <code>GC_REGION_EDIT_METADATA = 3;</code>
-     */
-    public static final int GC_REGION_EDIT_METADATA_VALUE = 3;
-
-
-    public final int getNumber() {
-      return value;
-    }
-
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
-    public static GCMergedRegionsState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static GCMergedRegionsState forNumber(int value) {
-      switch (value) {
-        case 1: return GC_MERGED_REGIONS_PREPARE;
-        case 2: return GC_MERGED_REGIONS_PURGE;
-        case 3: return GC_REGION_EDIT_METADATA;
-        default: return null;
-      }
-    }
-
-    public static 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<GCMergedRegionsState>
-        internalGetValueMap() {
-      return internalValueMap;
-    }
-    private static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<
-        GCMergedRegionsState> internalValueMap =
-          new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.EnumLiteMap<GCMergedRegionsState>()
 {
-            public GCMergedRegionsState findValueByNumber(int number) {
-              return GCMergedRegionsState.forNumber(number);
-            }
-          };
-
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
-        getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
-    }
-    public final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptorForType() {
-      return getDescriptor();
-    }
-    public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumDescriptor
-        getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.getDescriptor().getEnumTypes().get(21);
-    }
-
-    private static final GCMergedRegionsState[] VALUES = values();
-
-    public static GCMergedRegionsState valueOf(
-        
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.EnumValueDescriptor
 desc) {
-      if (desc.getType() != getDescriptor()) {
-        throw new java.lang.IllegalArgumentException(
-          "EnumValueDescriptor is not for this type.");
-      }
-      return VALUES[desc.getIndex()];
-    }
-
-    private final int value;
-
-    private GCMergedRegionsState(int value) {
-      this.value = value;
-    }
-
-    // @@protoc_insertion_point(enum_scope:hbase.pb.GCMergedRegionsState)
-  }
-
-  public interface CreateTableStateDataOrBuilder extends
-      // 
@@protoc_insertion_point(interface_extends:hbase.pb.CreateTableStateData)
-      org.apache.hadoop.hbase.shaded.com.google.protobuf.MessageOrBuilder {
-
-    /**
-     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
-     */
-    boolean hasUserInfo();
-    /**
-     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
-     */
-    
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation 
getUserInfo();
-    /**
-     * <code>required .hbase.pb.UserInformation user_info = 1;</code>
-     */
-    
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformationOrBuilder
 getUserInfoOrBuilder();
-
-    /**
-     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
-     */
-    boolean hasTableSchema();
-    /**
-     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
-     */
-    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableSchema 
getTableSchema();
-    /**
-     * <code>required .hbase.pb.TableSchema table_schema = 2;</code>
-     */
-    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableSchemaOrBuilder
 getTableSchemaOrBuilder();
-
-    /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
-     */
-    
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 
-        getRegionInfoList();
-    /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
-     */
-    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getRegionInfo(int index);
-    /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
-     */
-    int getRegionInfoCount();
-    /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
-     */
-    java.util.List<? extends 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder>
 
-        getRegionInfoOrBuilderList();
-    /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
      */
     
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getRegionInfoOrBuilder(
         int index);
@@ -17225,7 +16721,7 @@ public final class MasterProcedureProtos {
        * <code>required .hbase.pb.SnapshotDescription snapshot = 2;</code>
        */
       private 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
-          
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescriptionOrBuilder>
 
+          
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescriptionOrBuilder>
           getSnapshotFieldBuilder() {
         if (snapshotBuilder_ == null) {
           snapshotBuilder_ = new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
@@ -19275,7 +18771,7 @@ public final class MasterProcedureProtos {
        * <code>required .hbase.pb.SnapshotDescription snapshot = 2;</code>
        */
       private 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
-          
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescriptionOrBuilder>
 
+          
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescriptionOrBuilder>
           getSnapshotFieldBuilder() {
         if (snapshotBuilder_ == null) {
           snapshotBuilder_ = new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
@@ -20414,8 +19910,8 @@ public final class MasterProcedureProtos {
 
   }
 
-  public interface DispatchMergingRegionsStateDataOrBuilder extends
-      // 
@@protoc_insertion_point(interface_extends:hbase.pb.DispatchMergingRegionsStateData)
+  public interface MergeTableRegionsStateDataOrBuilder extends
+      // 
@@protoc_insertion_point(interface_extends:hbase.pb.MergeTableRegionsStateData)
       org.apache.hadoop.hbase.shaded.com.google.protobuf.MessageOrBuilder {
 
     /**
@@ -20432,63 +19928,63 @@ public final class MasterProcedureProtos {
     
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformationOrBuilder
 getUserInfoOrBuilder();
 
     /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
-    boolean hasTableName();
+    
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 
+        getRegionInfoList();
     /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
-    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName 
getTableName();
+    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getRegionInfo(int index);
     /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
-    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder
 getTableNameOrBuilder();
-
+    int getRegionInfoCount();
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
-    
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 
-        getRegionInfoList();
+    java.util.List<? extends 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder>
 
+        getRegionInfoOrBuilderList();
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
-    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getRegionInfo(int index);
+    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getRegionInfoOrBuilder(
+        int index);
+
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
      */
-    int getRegionInfoCount();
+    boolean hasMergedRegionInfo();
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
      */
-    java.util.List<? extends 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder>
 
-        getRegionInfoOrBuilderList();
+    org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getMergedRegionInfo();
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
      */
-    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getRegionInfoOrBuilder(
-        int index);
+    
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getMergedRegionInfoOrBuilder();
 
     /**
-     * <code>optional bool forcible = 4;</code>
+     * <code>optional bool forcible = 4 [default = false];</code>
      */
     boolean hasForcible();
     /**
-     * <code>optional bool forcible = 4;</code>
+     * <code>optional bool forcible = 4 [default = false];</code>
      */
     boolean getForcible();
   }
   /**
-   * Protobuf type {@code hbase.pb.DispatchMergingRegionsStateData}
+   * Protobuf type {@code hbase.pb.MergeTableRegionsStateData}
    */
-  public  static final class DispatchMergingRegionsStateData extends
+  public  static final class MergeTableRegionsStateData extends
       org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3 
implements
-      // 
@@protoc_insertion_point(message_implements:hbase.pb.DispatchMergingRegionsStateData)
-      DispatchMergingRegionsStateDataOrBuilder {
-    // Use DispatchMergingRegionsStateData.newBuilder() to construct.
-    private 
DispatchMergingRegionsStateData(org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.Builder<?>
 builder) {
+      // 
@@protoc_insertion_point(message_implements:hbase.pb.MergeTableRegionsStateData)
+      MergeTableRegionsStateDataOrBuilder {
+    // Use MergeTableRegionsStateData.newBuilder() to construct.
+    private 
MergeTableRegionsStateData(org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.Builder<?>
 builder) {
       super(builder);
     }
-    private DispatchMergingRegionsStateData() {
+    private MergeTableRegionsStateData() {
       regionInfo_ = java.util.Collections.emptyList();
       forcible_ = false;
     }
@@ -20498,7 +19994,7 @@ public final class MasterProcedureProtos {
     getUnknownFields() {
       return this.unknownFields;
     }
-    private DispatchMergingRegionsStateData(
+    private MergeTableRegionsStateData(
         org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedInputStream 
input,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 {
@@ -20535,25 +20031,25 @@ public final class MasterProcedureProtos {
               break;
             }
             case 18: {
-              
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder 
subBuilder = null;
-              if (((bitField0_ & 0x00000002) == 0x00000002)) {
-                subBuilder = tableName_.toBuilder();
-              }
-              tableName_ = 
input.readMessage(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.PARSER,
 extensionRegistry);
-              if (subBuilder != null) {
-                subBuilder.mergeFrom(tableName_);
-                tableName_ = subBuilder.buildPartial();
+              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
+                regionInfo_ = new 
java.util.ArrayList<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>();
+                mutable_bitField0_ |= 0x00000002;
               }
-              bitField0_ |= 0x00000002;
+              regionInfo_.add(
+                  
input.readMessage(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.PARSER,
 extensionRegistry));
               break;
             }
             case 26: {
-              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                regionInfo_ = new 
java.util.ArrayList<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>();
-                mutable_bitField0_ |= 0x00000004;
+              
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.Builder
 subBuilder = null;
+              if (((bitField0_ & 0x00000002) == 0x00000002)) {
+                subBuilder = mergedRegionInfo_.toBuilder();
               }
-              regionInfo_.add(
-                  
input.readMessage(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.PARSER,
 extensionRegistry));
+              mergedRegionInfo_ = 
input.readMessage(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.PARSER,
 extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(mergedRegionInfo_);
+                mergedRegionInfo_ = subBuilder.buildPartial();
+              }
+              bitField0_ |= 0x00000002;
               break;
             }
             case 32: {
@@ -20569,7 +20065,7 @@ public final class MasterProcedureProtos {
         throw new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException(
             e).setUnfinishedMessage(this);
       } finally {
-        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
+        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           regionInfo_ = java.util.Collections.unmodifiableList(regionInfo_);
         }
         this.unknownFields = unknownFields.build();
@@ -20578,14 +20074,14 @@ public final class MasterProcedureProtos {
     }
     public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_DispatchMergingRegionsStateData_descriptor;
+      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_MergeTableRegionsStateData_descriptor;
     }
 
     protected 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_DispatchMergingRegionsStateData_fieldAccessorTable
+      return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_MergeTableRegionsStateData_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.class,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.Builder.class);
+              
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.class,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.Builder.class);
     }
 
     private int bitField0_;
@@ -20610,72 +20106,72 @@ public final class MasterProcedureProtos {
       return userInfo_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation.getDefaultInstance()
 : userInfo_;
     }
 
-    public static final int TABLE_NAME_FIELD_NUMBER = 2;
-    private 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName 
tableName_;
-    /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
-     */
-    public boolean hasTableName() {
-      return ((bitField0_ & 0x00000002) == 0x00000002);
-    }
-    /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
-     */
-    public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName 
getTableName() {
-      return tableName_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.getDefaultInstance()
 : tableName_;
-    }
-    /**
-     * <code>required .hbase.pb.TableName table_name = 2;</code>
-     */
-    public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder
 getTableNameOrBuilder() {
-      return tableName_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.getDefaultInstance()
 : tableName_;
-    }
-
-    public static final int REGION_INFO_FIELD_NUMBER = 3;
+    public static final int REGION_INFO_FIELD_NUMBER = 2;
     private 
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 regionInfo_;
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
     public 
java.util.List<org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo>
 getRegionInfoList() {
       return regionInfo_;
     }
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
     public java.util.List<? extends 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder>
 
         getRegionInfoOrBuilderList() {
       return regionInfo_;
     }
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
     public int getRegionInfoCount() {
       return regionInfo_.size();
     }
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
     public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getRegionInfo(int index) {
       return regionInfo_.get(index);
     }
     /**
-     * <code>repeated .hbase.pb.RegionInfo region_info = 3;</code>
+     * <code>repeated .hbase.pb.RegionInfo region_info = 2;</code>
      */
     public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getRegionInfoOrBuilder(
         int index) {
       return regionInfo_.get(index);
     }
 
+    public static final int MERGED_REGION_INFO_FIELD_NUMBER = 3;
+    private 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
mergedRegionInfo_;
+    /**
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
+     */
+    public boolean hasMergedRegionInfo() {
+      return ((bitField0_ & 0x00000002) == 0x00000002);
+    }
+    /**
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
+     */
+    public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo 
getMergedRegionInfo() {
+      return mergedRegionInfo_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.getDefaultInstance()
 : mergedRegionInfo_;
+    }
+    /**
+     * <code>required .hbase.pb.RegionInfo merged_region_info = 3;</code>
+     */
+    public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfoOrBuilder
 getMergedRegionInfoOrBuilder() {
+      return mergedRegionInfo_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionInfo.getDefaultInstance()
 : mergedRegionInfo_;
+    }
+
     public static final int FORCIBLE_FIELD_NUMBER = 4;
     private boolean forcible_;
     /**
-     * <code>optional bool forcible = 4;</code>
+     * <code>optional bool forcible = 4 [default = false];</code>
      */
     public boolean hasForcible() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
-     * <code>optional bool forcible = 4;</code>
+     * <code>optional bool forcible = 4 [default = false];</code>
      */
     public boolean getForcible() {
       return forcible_;
@@ -20691,7 +20187,7 @@ public final class MasterProcedureProtos {
         memoizedIsInitialized = 0;
         return false;
       }
-      if (!hasTableName()) {
+      if (!hasMergedRegionInfo()) {
         memoizedIsInitialized = 0;
         return false;
       }
@@ -20699,16 +20195,16 @@ public final class MasterProcedureProtos {
         memoizedIsInitialized = 0;
         return false;
       }
-      if (!getTableName().isInitialized()) {
-        memoizedIsInitialized = 0;
-        return false;
-      }
       for (int i = 0; i < getRegionInfoCount(); i++) {
         if (!getRegionInfo(i).isInitialized()) {
           memoizedIsInitialized = 0;
           return false;
         }
       }
+      if (!getMergedRegionInfo().isInitialized()) {
+        memoizedIsInitialized = 0;
+        return false;
+      }
       memoizedIsInitialized = 1;
       return true;
     }
@@ -20718,11 +20214,11 @@ public final class MasterProcedureProtos {
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeMessage(1, getUserInfo());
       }
-      if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getTableName());
-      }
       for (int i = 0; i < regionInfo_.size(); i++) {
-        output.writeMessage(3, regionInfo_.get(i));
+        output.writeMessage(2, regionInfo_.get(i));
+      }
+      if (((bitField0_ & 0x00000002) == 0x00000002)) {
+        output.writeMessage(3, getMergedRegionInfo());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeBool(4, forcible_);
@@ -20739,13 +20235,13 @@ public final class MasterProcedureProtos {
         size += 
org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedOutputStream
           .computeMessageSize(1, getUserInfo());
       }
-      if (((bitField0_ & 0x00000002) == 0x00000002)) {
+      for (int i = 0; i < regionInfo_.size(); i++) {
         size += 
org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getTableName());
+          .computeMessageSize(2, regionInfo_.get(i));
       }
-      for (int i = 0; i < regionInfo_.size(); i++) {
+      if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += 
org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, regionInfo_.get(i));
+          .computeMessageSize(3, getMergedRegionInfo());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += 
org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedOutputStream
@@ -20762,10 +20258,10 @@ public final class MasterProcedureProtos {
       if (obj == this) {
        return true;
       }
-      if (!(obj instanceof 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData))
 {
+      if (!(obj instanceof 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData))
 {
         return super.equals(obj);
       }
-      
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 other = 
(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData)
 obj;
+      
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 other = 
(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData)
 obj;
 
       boolean result = true;
       result = result && (hasUserInfo() == other.hasUserInfo());
@@ -20773,13 +20269,13 @@ public final class MasterProcedureProtos {
         result = result && getUserInfo()
             .equals(other.getUserInfo());
       }
-      result = result && (hasTableName() == other.hasTableName());
-      if (hasTableName()) {
-        result = result && getTableName()
-            .equals(other.getTableName());
-      }
       result = result && getRegionInfoList()
           .equals(other.getRegionInfoList());
+      result = result && (hasMergedRegionInfo() == 
other.hasMergedRegionInfo());
+      if (hasMergedRegionInfo()) {
+        result = result && getMergedRegionInfo()
+            .equals(other.getMergedRegionInfo());
+      }
       result = result && (hasForcible() == other.hasForcible());
       if (hasForcible()) {
         result = result && (getForcible()
@@ -20800,14 +20296,14 @@ public final class MasterProcedureProtos {
         hash = (37 * hash) + USER_INFO_FIELD_NUMBER;
         hash = (53 * hash) + getUserInfo().hashCode();
       }
-      if (hasTableName()) {
-        hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getTableName().hashCode();
-      }
       if (getRegionInfoCount() > 0) {
         hash = (37 * hash) + REGION_INFO_FIELD_NUMBER;
         hash = (53 * hash) + getRegionInfoList().hashCode();
       }
+      if (hasMergedRegionInfo()) {
+        hash = (37 * hash) + MERGED_REGION_INFO_FIELD_NUMBER;
+        hash = (53 * hash) + getMergedRegionInfo().hashCode();
+      }
       if (hasForcible()) {
         hash = (37 * hash) + FORCIBLE_FIELD_NUMBER;
         hash = (53 * hash) + 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Internal.hashBoolean(
@@ -20818,58 +20314,58 @@ public final class MasterProcedureProtos {
       return hash;
     }
 
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         org.apache.hadoop.hbase.shaded.com.google.protobuf.ByteString data)
         throws 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 {
       return PARSER.parseFrom(data);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         org.apache.hadoop.hbase.shaded.com.google.protobuf.ByteString data,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(byte[] data)
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(byte[] data)
         throws 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 {
       return PARSER.parseFrom(data);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         byte[] data,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws 
org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(java.io.InputStream input)
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(java.io.InputStream input)
         throws java.io.IOException {
       return 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
           .parseWithIOException(PARSER, input);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         java.io.InputStream input,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws java.io.IOException {
       return 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
           .parseWithIOException(PARSER, input, extensionRegistry);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseDelimitedFrom(java.io.InputStream input)
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
       return 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
           .parseDelimitedWithIOException(PARSER, input);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseDelimitedFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseDelimitedFrom(
         java.io.InputStream input,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws java.io.IOException {
       return 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
           .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedInputStream 
input)
         throws java.io.IOException {
       return 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
           .parseWithIOException(PARSER, input);
     }
-    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parseFrom(
+    public static 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parseFrom(
         org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedInputStream 
input,
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
         throws java.io.IOException {
@@ -20881,7 +20377,7 @@ public final class MasterProcedureProtos {
     public static Builder newBuilder() {
       return DEFAULT_INSTANCE.toBuilder();
     }
-    public static Builder 
newBuilder(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 prototype) {
+    public static Builder 
newBuilder(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 prototype) {
       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() {
@@ -20896,25 +20392,25 @@ public final class MasterProcedureProtos {
       return builder;
     }
     /**
-     * Protobuf type {@code hbase.pb.DispatchMergingRegionsStateData}
+     * Protobuf type {@code hbase.pb.MergeTableRegionsStateData}
      */
     public static final class Builder extends
         
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.Builder<Builder>
 implements
-        // 
@@protoc_insertion_point(builder_implements:hbase.pb.DispatchMergingRegionsStateData)
-        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateDataOrBuilder
 {
+        // 
@@protoc_insertion_point(builder_implements:hbase.pb.MergeTableRegionsStateData)
+        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateDataOrBuilder
 {
       public static final 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
-        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_DispatchMergingRegionsStateData_descriptor;
+        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_MergeTableRegionsStateData_descriptor;
       }
 
       protected 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_DispatchMergingRegionsStateData_fieldAccessorTable
+        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_MergeTableRegionsStateData_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
-                
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.class,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.Builder.class);
+                
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.class,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.Builder.class);
       }
 
-      // Construct using 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.newBuilder()
+      // Construct using 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
@@ -20928,8 +20424,8 @@ public final class MasterProcedureProtos {
         if 
(org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3
                 .alwaysUseFieldBuilders) {
           getUserInfoFieldBuilder();
-          getTableNameFieldBuilder();
           getRegionInfoFieldBuilder();
+          getMergedRegionInfoFieldBuilder();
         }
       }
       public Builder clear() {
@@ -20940,18 +20436,18 @@ public final class MasterProcedureProtos {
           userInfoBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
-        if (tableNameBuilder_ == null) {
-          tableName_ = null;
-        } else {
-          tableNameBuilder_.clear();
-        }
-        bitField0_ = (bitField0_ & ~0x00000002);
         if (regionInfoBuilder_ == null) {
           regionInfo_ = java.util.Collections.emptyList();
-          bitField0_ = (bitField0_ & ~0x00000004);
+          bitField0_ = (bitField0_ & ~0x00000002);
         } else {
           regionInfoBuilder_.clear();
         }
+        if (mergedRegionInfoBuilder_ == null) {
+          mergedRegionInfo_ = null;
+        } else {
+          mergedRegionInfoBuilder_.clear();
+        }
+        bitField0_ = (bitField0_ & ~0x00000004);
         forcible_ = false;
         bitField0_ = (bitField0_ & ~0x00000008);
         return this;
@@ -20959,23 +20455,23 @@ public final class MasterProcedureProtos {
 
       public 
org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_DispatchMergingRegionsStateData_descriptor;
+        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.internal_static_hbase_pb_MergeTableRegionsStateData_descriptor;
       }
 
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 getDefaultInstanceForType() {
-        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.getDefaultInstance();
+      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 getDefaultInstanceForType() {
+        return 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.getDefaultInstance();
       }
 
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 build() {
-        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 result = buildPartial();
+      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 build() {
+        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 result = buildPartial();
         if (!result.isInitialized()) {
           throw newUninitializedMessageException(result);
         }
         return result;
       }
 
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 buildPartial() {
-        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 result = new 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData(this);
+      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 buildPartial() {
+        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 result = new 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData(this);
         int from_bitField0_ = bitField0_;
         int to_bitField0_ = 0;
         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
@@ -20986,23 +20482,23 @@ public final class MasterProcedureProtos {
         } else {
           result.userInfo_ = userInfoBuilder_.build();
         }
-        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
-          to_bitField0_ |= 0x00000002;
-        }
-        if (tableNameBuilder_ == null) {
-          result.tableName_ = tableName_;
-        } else {
-          result.tableName_ = tableNameBuilder_.build();
-        }
         if (regionInfoBuilder_ == null) {
-          if (((bitField0_ & 0x00000004) == 0x00000004)) {
+          if (((bitField0_ & 0x00000002) == 0x00000002)) {
             regionInfo_ = java.util.Collections.unmodifiableList(regionInfo_);
-            bitField0_ = (bitField0_ & ~0x00000004);
+            bitField0_ = (bitField0_ & ~0x00000002);
           }
           result.regionInfo_ = regionInfo_;
         } else {
           result.regionInfo_ = regionInfoBuilder_.build();
         }
+        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
+          to_bitField0_ |= 0x00000002;
+        }
+        if (mergedRegionInfoBuilder_ == null) {
+          result.mergedRegionInfo_ = mergedRegionInfo_;
+        } else {
+          result.mergedRegionInfo_ = mergedRegionInfoBuilder_.build();
+        }
         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
           to_bitField0_ |= 0x00000004;
         }
@@ -21039,27 +20535,24 @@ public final class MasterProcedureProtos {
         return (Builder) super.addRepeatedField(field, value);
       }
       public Builder 
mergeFrom(org.apache.hadoop.hbase.shaded.com.google.protobuf.Message other) {
-        if (other instanceof 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData)
 {
-          return 
mergeFrom((org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData)other);
+        if (other instanceof 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData)
 {
+          return 
mergeFrom((org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData)other);
         } else {
           super.mergeFrom(other);
           return this;
         }
       }
 
-      public Builder 
mergeFrom(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 other) {
-        if (other == 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData.getDefaultInstance())
 return this;
+      public Builder 
mergeFrom(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 other) {
+        if (other == 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData.getDefaultInstance())
 return this;
         if (other.hasUserInfo()) {
           mergeUserInfo(other.getUserInfo());
         }
-        if (other.hasTableName()) {
-          mergeTableName(other.getTableName());
-        }
         if (regionInfoBuilder_ == null) {
           if (!other.regionInfo_.isEmpty()) {
             if (regionInfo_.isEmpty()) {
               regionInfo_ = other.regionInfo_;
-              bitField0_ = (bitField0_ & ~0x00000004);
+              bitField0_ = (bitField0_ & ~0x00000002);
             } else {
               ensureRegionInfoIsMutable();
               regionInfo_.addAll(other.regionInfo_);
@@ -21072,7 +20565,7 @@ public final class MasterProcedureProtos {
               regionInfoBuilder_.dispose();
               regionInfoBuilder_ = null;
               regionInfo_ = other.regionInfo_;
-              bitField0_ = (bitField0_ & ~0x00000004);
+              bitField0_ = (bitField0_ & ~0x00000002);
               regionInfoBuilder_ = 
                 
org.apache.hadoop.hbase.shaded.com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
 ?
                    getRegionInfoFieldBuilder() : null;
@@ -21081,6 +20574,9 @@ public final class MasterProcedureProtos {
             }
           }
         }
+        if (other.hasMergedRegionInfo()) {
+          mergeMergedRegionInfo(other.getMergedRegionInfo());
+        }
         if (other.hasForcible()) {
           setForcible(other.getForcible());
         }
@@ -21093,20 +20589,20 @@ public final class MasterProcedureProtos {
         if (!hasUserInfo()) {
           return false;
         }
-        if (!hasTableName()) {
+        if (!hasMergedRegionInfo()) {
           return false;
         }
         if (!getUserInfo().isInitialized()) {
           return false;
         }
-        if (!getTableName().isInitialized()) {
-          return false;
-        }
         for (int i = 0; i < getRegionInfoCount(); i++) {
           if (!getRegionInfo(i).isInitialized()) {
             return false;
           }
         }
+        if (!getMergedRegionInfo().isInitialized()) {
+          return false;
+        }
         return true;
       }
 
@@ -21114,11 +20610,11 @@ public final class MasterProcedureProtos {
           org.apache.hadoop.hbase.shaded.com.google.protobuf.CodedInputStream 
input,
           
org.apache.hadoop.hbase.shaded.com.google.protobuf.ExtensionRegistryLite 
extensionRegistry)
           throws java.io.IOException {
-        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData
 parsedMessage = null;
+        
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData
 parsedMessage = null;
         try {
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch 
(org.apache.hadoop.hbase.shaded.com.google.protobuf.InvalidProtocolBufferException
 e) {
-          parsedMessage = 
(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.DispatchMergingRegionsStateData)
 e.getUnfinishedMessage();
+          parsedMessage = 
(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.MergeTableRegionsStateData)
 e.getUnfinishedMessage();
           throw e.unwrapIOException();
         } finally {
           if (parsedMessage != null) {
@@ -21247,130 +20743,12 @@ public final class MasterProcedureProtos {
         return userInfoBuilder_;
       }
 
-      private 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName 
tableName_ = null;
-      private 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
-          
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName, 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder>
 tableNameBuilder_;
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public boolean hasTableName() {
-        return ((bitField0_ & 0x00000002) == 0x00000002);
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName 
getTableName() {
-        if (tableNameBuilder_ == null) {
-          return tableName_ == null ? 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.getDefaultInstance()
 : tableName_;
-        } else {
-          return tableNameBuilder_.getMessage();
-        }
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public Builder 
setTableName(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName
 value) {
-        if (tableNameBuilder_ == null) {
-          if (value == null) {
-            throw new NullPointerException();
-          }
-          tableName_ = value;
-          onChanged();
-        } else {
-          tableNameBuilder_.setMessage(value);
-        }
-        bitField0_ |= 0x00000002;
-        return this;
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public Builder setTableName(
-          
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder 
builderForValue) {
-        if (tableNameBuilder_ == null) {
-          tableName_ = builderForValue.build();
-          onChanged();
-        } else {
-          tableNameBuilder_.setMessage(builderForValue.build());
-        }
-        bitField0_ |= 0x00000002;
-        return this;
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public Builder 
mergeTableName(org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName
 value) {
-        if (tableNameBuilder_ == null) {
-          if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              tableName_ != null &&
-              tableName_ != 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.getDefaultInstance())
 {
-            tableName_ =
-              
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.newBuilder(tableName_).mergeFrom(value).buildPartial();
-          } else {
-            tableName_ = value;
-          }
-          onChanged();
-        } else {
-          tableNameBuilder_.mergeFrom(value);
-        }
-        bitField0_ |= 0x00000002;
-        return this;
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public Builder clearTableName() {
-        if (tableNameBuilder_ == null) {
-          tableName_ = null;
-          onChanged();
-        } else {
-          tableNameBuilder_.clear();
-        }
-        bitField0_ = (bitField0_ & ~0x00000002);
-        return this;
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder 
getTableNameBuilder() {
-        bitField0_ |= 0x00000002;
-        onChanged();
-        return getTableNameFieldBuilder().getBuilder();
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      public 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder
 getTableNameOrBuilder() {
-        if (tableNameBuilder_ != null) {
-          return tableNameBuilder_.getMessageOrBuilder();
-        } else {
-          return tableName_ == null ?
-              
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.getDefaultInstance()
 : tableName_;
-        }
-      }
-      /**
-       * <code>required .hbase.pb.TableName table_name = 2;</code>
-       */
-      private 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
-          
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName, 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder>
 
-          getTableNameFieldBuilder() {
-        if (tableNameBuilder_ == null) {
-          tableNameBuilder_ = new 
org.apache.hadoop.hbase.shaded.com.google.protobuf.SingleFieldBuilderV3<
-              
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName, 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableName.Builder,
 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.TableNameOrBuilder>(
-                  getTableName(),
-                  getParentForChildren(),
-                  isClean(

<TRUNCATED>

Reply via email to