[ https://issues.apache.org/jira/browse/HBASE-9696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13791014#comment-13791014 ]
Jeffrey Zhong commented on HBASE-9696: -------------------------------------- [~jxiang] Do you have a more concret statck trace? From the code, when master restarts, it reads the merging RIT znodes to reconstruct the RIT state in the following code: {code} case RS_ZK_REGION_MERGING: ... handleRegionMerging(rt, prettyPrintedRegionName, sn); ... break; {code} And in unsign(the move region request) we handle the merging issue as following: {code} if (isSplitOrSplittingOrMergedOrMerging(path)) { LOG.debug(path + " is SPLIT or SPLITTING or MERGED or MERGING; " + "skipping unassign because region no longer exists -- its split or merge"); reassign = false; // no need to reassign for split/merged region return; } {code} It seems to me that the issue in the JIRA should be a very rare case(not the normal code path), right? Thanks. > Master recovery ignores online merge znode > ------------------------------------------ > > Key: HBASE-9696 > URL: https://issues.apache.org/jira/browse/HBASE-9696 > Project: HBase > Issue Type: Bug > Components: master, Region Assignment > Reporter: Jimmy Xiang > Assignee: Jimmy Xiang > Fix For: 0.98.0, 0.96.1 > > Attachments: trunk-9696.patch > > > The online merge znode uses the new region to be created. When master > restarts, the new region is still unknown if the merging is not completed. > Therefore the znode is ignored, which should not. That means the two merging > regions could be moved around. This could cause some data loss if we are not > luck. -- This message was sent by Atlassian JIRA (v6.1#6144)