[
https://issues.apache.org/jira/browse/HBASE-5099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13177404#comment-13177404
]
Zhihong Yu commented on HBASE-5099:
-----------------------------------
@Jimmy:
Do you mind producing a patch for 0.92 ?
I got the following when I tried to apply patch v5 to 0.92:
{code}
1 out of 3 hunks FAILED -- saving rejects to file
src/main/java/org/apache/hadoop/hbase/master/HMaster.java.rej
{code}
Also there is no test category in 0.92:
{code}
[ERROR]
/Users/zhihyu/92hbase/src/test/java/org/apache/hadoop/hbase/master/TestMasterZKSessionRecovery.java:[27,30]
cannot find symbol
[ERROR] symbol : class MediumTests
[ERROR] location: package org.apache.hadoop.hbase
{code}
This is a whitespace at line 41 in TestMasterZKSessionRecovery - I can remove
it at time of integration.
Nice work.
> ZK event thread waiting for root region while server shutdown handler waiting
> for event thread to finish distributed log splitting to recover the region
> sever the root region is on
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-5099
> URL: https://issues.apache.org/jira/browse/HBASE-5099
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.92.0, 0.94.0
> Reporter: Jimmy Xiang
> Assignee: Jimmy Xiang
> Attachments: ZK-event-thread-waiting-for-root.png,
> distributed-log-splitting-hangs.png, hbase-5099-v2.patch,
> hbase-5099-v3.patch, hbase-5099-v4.patch, hbase-5099-v5.patch,
> hbase-5099.patch
>
>
> A RS died. The ServerShutdownHandler kicked in and started the logspliting.
> SpliLogManager
> installed the tasks asynchronously, then started to wait for them to complete.
> The task znodes were not created actually. The requests were just queued.
> At this time, the zookeeper connection expired. HMaster tried to recover the
> expired ZK session.
> During the recovery, a new zookeeper connection was created. However, this
> master became the
> new master again. It tried to assign root and meta.
> Because the dead RS got the old root region, the master needs to wait for the
> log splitting to complete.
> This waiting holds the zookeeper event thread. So the async create split
> task is never retried since
> there is only one event thread, which is waiting for the root region assigned.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira