[ 
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)

Reply via email to