[ 
https://issues.apache.org/jira/browse/HBASE-22061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16795727#comment-16795727
 ] 

Jingyun Tian commented on HBASE-22061:
--------------------------------------

[~Apache9] Yes.
{code}
  protected LockState acquireLock(final MasterProcedureEnv env) {
    if (env.getProcedureScheduler().waitRegions(this, getTableName(),
        mergedRegion, regionsToMerge[0], regionsToMerge[1])) {
      try {
        LOG.debug(LockState.LOCK_EVENT_WAIT + " " + 
env.getProcedureScheduler().dumpLocks());
      } catch (IOException e) {
        // Ignore, just for logging
      }
      return LockState.LOCK_EVENT_WAIT;
    }
    return LockState.LOCK_ACQUIRED;
  }
{code}

> SplitTableRegionProcedure should hold the lock of its daughter regions
> ----------------------------------------------------------------------
>
>                 Key: HBASE-22061
>                 URL: https://issues.apache.org/jira/browse/HBASE-22061
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Jingyun Tian
>            Priority: Major
>
> Currently SplitTableRegionProcedure only hold the region of parent region. 
> But during processing of this procedure, after the daughter regions are 
> updated to meta, other procedures can grab the lock of them,  which is the 
> situation we don't want to see.
> So I think SplitTableRegionProcedure should hold the lock of parent region 
> and its daughter regions like MergeTableRegionsProcedure. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to