stack created HBASE-20796:
-----------------------------

             Summary: STUCK RIT though region successfully assigned
                 Key: HBASE-20796
                 URL: https://issues.apache.org/jira/browse/HBASE-20796
             Project: HBase
          Issue Type: Bug
          Components: amv2
            Reporter: stack
             Fix For: 2.0.0


This is a good one. We keep logging messages like this:

{code}
2018-06-26 12:32:24,859 WARN 
org.apache.hadoop.hbase.master.assignment.AssignmentManager: STUCK 
Region-In-Transition rit=OPENING, location=vd0410.X.Y.com,22101,1529611445046, 
table=IntegrationTestBigLinkedList_20180525080406, 
region=e10b35d49528e2453a04c7038e3393d7
{code}

...though the region is successfully assigned.

Story:

 * Dispatch an assign 2018-06-26 12:31:27,390 INFO 
org.apache.hadoop.hbase.master.assignment.RegionTransitionProcedure: Dispatch 
pid=370829, ppid=370391, state=RUNNABLE:REGION_TRANSITION_DISPATCH; 
AssignProcedure table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2; rit=OPENING, 
location=vd0410.X.Y.Z,22101,1529611445046
 * It gets stuck 2018-06-26 12:32:29,860 WARN 
org.apache.hadoop.hbase.master.assignment.AssignmentManager: STUCK 
Region-In-Transition rit=OPENING, location=vd0410.X.Y.Z,22101,1529611445046, 
table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2 (Because the server was killed)
 * We stay STUCK for a while.
 * The Master notices the server as crashed and starts a SCP.
 * SCP kills ongoing assign: 2018-06-26 12:32:54,809 INFO 
org.apache.hadoop.hbase.master.procedure.ServerCrashProcedure: pid=371105 found 
RIT pid=370829, ppid=370391, state=RUNNABLE:REGION_TRANSITION_DISPATCH; 
AssignProcedure table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2; rit=OPENING, 
location=vd0410.X.Y.Z,22101,1529611445046
 * The kill brings on a retry ... 2018-06-26 12:32:54,810 WARN 
org.apache.hadoop.hbase.master.assignment.RegionTransitionProcedure: Remote 
call failed pid=370829, ppid=370391, state=RUNNABLE:REGION_TRANSITION_DISPATCH; 
AssignProcedure table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2; rit=OPENING, 
location=vd0410.X.Y.Z,22101,1529611445046; exception=ServerCrashProcedure 
pid=371105, server=vd0410.X.Y.Z,22101,1529611445046
 * Which eventually succeeds..... Successfully deployed to new server 
2018-06-26 12:32:55,429 INFO 
org.apache.hadoop.hbase.procedure2.ProcedureExecutor: Finished pid=370829, 
ppid=370391, state=SUCCESS; AssignProcedure 
table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2 in 1mins, 35.379sec
 * But then, it looks like the RPC was ongoing and it broke in following way 
2018-06-26 12:33:06,378 WARN 
org.apache.hadoop.hbase.master.assignment.RegionTransitionProcedure: Remote 
call failed pid=370829, ppid=370391, state=SUCCESS; AssignProcedure 
table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2; rit=OPEN, 
location=vc0614.halxg.cloudera.com,22101,1529611443424; exception=Call to 
vd0410.X.Y.Z/10.10.10.10:22101 failed on local exception: 
org.apache.hbase.thirdparty.io.netty.channel.unix.Errors$NativeIoException: 
syscall:read(..) failed: Connection reset by peer (Notice how state for region 
is OPEN and 'SUCCESS').
 * Then says 2018-06-26 12:33:06,380 INFO 
org.apache.hadoop.hbase.master.assignment.AssignProcedure: Retry=1 of max=10; 
pid=370829, ppid=370391, state=SUCCESS; AssignProcedure 
table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2; rit=OPEN, 
location=vc0614.X.Y.Z,22101,1529611443424
 * And finally...  2018-06-26 12:34:10,727 WARN 
org.apache.hadoop.hbase.master.assignment.AssignmentManager: STUCK 
Region-In-Transition rit=OFFLINE, location=null, 
table=IntegrationTestBigLinkedList_20180612114844, 
region=f69ccf7d9178ce166b515e0e2ef019d2

Restart of Master got rid of the STUCK complaints.

This is interesting because the stuck rpc and the successful reassign are all 
riding on the same pid.






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

Reply via email to