[
https://issues.apache.org/jira/browse/HBASE-21440?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16684810#comment-16684810
]
Ankit Singhal commented on HBASE-21440:
---------------------------------------
Still the same failures on Jenkins, looking into it
Though TestMasterFailoverWithProcedures is passing for me locally (need to
check if my environment is not proper or not same as jenkins).
{code}
[INFO] Running
org.apache.hadoop.hbase.master.procedure.TestMasterFailoverWithProcedures
[INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 73.43 s
- in org.apache.hadoop.hbase.master.procedure.TestMasterFailoverWithProcedures
{code}
And, TestMergeTableRegionsProcedure never passes even without the patch. Need
to be debugged separately.
> Assign procedure on the crashed server is not properly interrupted
> ------------------------------------------------------------------
>
> Key: HBASE-21440
> URL: https://issues.apache.org/jira/browse/HBASE-21440
> Project: HBase
> Issue Type: Bug
> Affects Versions: 2.0.2
> Reporter: Ankit Singhal
> Assignee: Ankit Singhal
> Priority: Major
> Attachments: HBASE-21440.branch-2.0.001.patch,
> HBASE-21440.branch-2.0.002.patch, HBASE-21440.branch-2.0.003.patch,
> HBASE-21440.branch-2.0.004.patch
>
>
> When the server crashes, it's SCP checks if there is already a procedure
> assigning the region on this crashed server. If we found one, SCP will just
> interrupt the already running AssignProcedure by calling remoteCallFailed
> which internally just changes the region node state to OFFLINE and send the
> procedure back with transition queue state for assignment with a new plan.
> But, due to the race condition between the calling of the remoteCallFailed
> and current state of the already running assign
> procedure(REGION_TRANSITION_FINISH: where the region is already opened), it
> is possible that assign procedure goes ahead in updating the regionStateNode
> to OPEN on a crashed server.
> As SCP had already skipped this region for assignment as it was relying on
> existing assign procedure to do the right thing, this whole confusion leads
> region to a not accessible state.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)