private boolean shouldFailForMigrating(MasterProcedureEnv env) throws IOException {
    long parentProcId = getParentProcId();
    if (
      parentProcId != Procedure.NO_PROC_ID && env.getMasterServices().getMasterProcedureExecutor()
        .getProcedure(parentProcId) instanceof MigrateReplicationQueueFromZkToTableProcedure
    ) {
      // this is scheduled by MigrateReplicationQueueFromZkToTableProcedure, should not fail it
      return false;
    }
    return env.getMasterServices().getProcedures().stream()
      .filter(p -> p instanceof MigrateReplicationQueueFromZkToTableProcedure)
      .anyMatch(p -> !p.isFinished());
  }
The implementation class should override this method if the procedure may enter the serial
related states.
hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/ModifyPeerProcedure.java