[
https://issues.apache.org/jira/browse/HBASE-9696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13792353#comment-13792353
]
Jeffrey Zhong commented on HBASE-9696:
--------------------------------------
[~jxiang] What's the reason introducing the four new states? For merging, it's
a master initiated operation we should have corresponding memory state so
future region move requests can be cancelled. For splitting, before a region
split starts, it creates a splitting RIT znode while a region move will try to
create a closing RIT znode so only one operation can succeed. In master
recovery scenario, merging state can be restored by a few lines of code in the
patch.
The reason I'm asking is that not only the 4 new stats increase the risk of the
patch(because you want to put it in 0.96) but also a more complicated region
transition state machine for future maintenance. Any chance can you cut the
new states? 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, trunk-9696_v2.1.patch,
> trunk-9696_v2.patch, trunk-9696_v3.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)