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

Allan Yang commented on HBASE-21217:
------------------------------------

{quote}
There is no FAILED_CLOSE state so we can not tell master that the closing is 
failed. And I think the only possible way to meet the null region is that, we 
have already sent the request to RS, and RS has finished the closing, but a 
retrying rpc call has aleady been sent, and finally it is scheduled after we 
finish everything, then here we will meet a null region. For this case I think 
it is fine to just ignore it? Not sure if there are other possible ways to 
enter here, if so I think there will be bugs...
{quote}
Quote from the reviewborad.
Yes, I have encountered this in ITBLL, that's why I want to change back to 
CompatRemoteProcedureResolver in branch-2.0 and branch-2.1.  But it is 
definitely another bug need to reveal and fix.

> Revisit the executeProcedure method for open/close region
> ---------------------------------------------------------
>
>                 Key: HBASE-21217
>                 URL: https://issues.apache.org/jira/browse/HBASE-21217
>             Project: HBase
>          Issue Type: Sub-task
>          Components: amv2, proc-v2
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Critical
>             Fix For: 3.0.0, 2.2.0
>
>         Attachments: HBASE-21217-v1.patch, HBASE-21217-v2.patch, 
> HBASE-21217.patch
>
>
> Currently we just call openRegion and closeRegion directly, which is a bit 
> buggy. For example, in order to not fail all the open region requests while 
> there is only one failure, we will catch the exception and set a flag in the 
> return value. But for executeProcedures call, the return value will be 
> ignored, and we expect the openRegion method will always call 
> reportRegionStateTransition to report the failure but in fact it does not...
> And after HBASE-20881, we can confirm that the race could happen, where we 
> send a close request to a region which is opening(HBASE-21199), and vice 
> visa. So I think here we need to revisit the implementation of 
> executeProcedures to make it more stable.



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

Reply via email to