bolao created HBASE-26283:
-----------------------------

             Summary: RegionServer ignored a procedure dute to repeatedly 
opening which lead region stuck in RIT
                 Key: HBASE-26283
                 URL: https://issues.apache.org/jira/browse/HBASE-26283
             Project: HBase
          Issue Type: Improvement
          Components: Region Assignment
    Affects Versions: 2.3.5
            Reporter: bolao


       when hbase cluster shut down Suddenlly,  there are some repeatedly 
opening regions and cause them to stuck in RTI。we found 
org.apache.hadoop.hbase.regionserver.handler.AssignRegionHandler#process() 
directly return when handle repeatedly opening regions, and don't report to 
master,  master unable to  process next status for this procedure, and regions 
stuck in RIT。so can we  do like this:
 #  AssignRegionHandler report the region is online if regionserver found the 
region is online,
 # or AssignRegionHandler report the region is failed online if regionserver 
found the region is online, let Hmater to retry。

please give some suggestions, thanks !
{code:java}
// code placeholder
{code}
Region onlineRegion = rs.getRegion(encodedName); if (onlineRegion != null) \{ 
LOG.warn("Received OPEN for the region:{}, which is already online", 
regionName); // Just follow the old behavior, do we need to call 
reportRegionStateTransition? Maybe not? // For normal case, it could happen 
that the rpc call to schedule this handler is succeeded, // but before 
returning to master the connection is broken. And when master tries again, we 
// have already finished the opening. For this case we do not need to call // 
reportRegionStateTransition any more. return; }



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to