diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java index 8824bb3..4c5aa04 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java @@ -2565,7 +2565,10 @@ public class HMaster extends HRegionServer implements MasterServices { // // We need to wait for the procedure to potentially fail due to "prepare" sanity // checks. This will block only the beginning of the procedure. See HBASE-19953. - ProcedurePrepareLatch latch = ProcedurePrepareLatch.createBlockingLatch(); + + // In ModifyTableProcedure, the latch is released only after the whole process + // finished. Do not turn it into a sync op if client > 2.0 + ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0); submitProcedure( new ModifyTableProcedure(procedureExecutor.getEnvironment(), newDescriptor, latch)); latch.await();