[ 
https://issues.apache.org/jira/browse/HBASE-7390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13536454#comment-13536454
 ] 

nkeywal commented on HBASE-7390:
--------------------------------

@[~saint....@gmail.com]
For SPLITTING and OPENING, I misread your point in you first comment. Yes, we 
may miss the state change because of ZooKeeper API: when we receive a watch, we 
need to do a getData. In the meantime, the value may have changed. The scenario 
is, for example
- Master creates a znode with M_ZK_REGION_OFFLINE and watch it
- Regionserver updates the znode to RS_ZK_REGION_OPENING
- Master receives the event
- Regionserver updates the znode to RS_ZK_REGION_OPENED 
- Master does a getData, and reads RS_ZK_REGION_OPENED

In this scenario, the master missed the RS_ZK_REGION_OPENING. So in the master 
code you must be ready to miss some transitions. The trunk code is actually 
compatible with this, but the reason is not documented.

However, I don't know why we tickle RS_REGION_SPLIT as we do in the code.

                
> Add extra test cases for assignement on the region server and fix the related 
> issues
> ------------------------------------------------------------------------------------
>
>                 Key: HBASE-7390
>                 URL: https://issues.apache.org/jira/browse/HBASE-7390
>             Project: HBase
>          Issue Type: Bug
>          Components: Region Assignment, regionserver
>    Affects Versions: 0.96.0
>            Reporter: nkeywal
>            Assignee: nkeywal
>             Fix For: 0.96.0
>
>         Attachments: 7390.v1.patch, 7390.v2.patch, 7390.v3.patch, 
> assignment_zk_states.jpg
>
>
> We don't have a lot of tests on the region server itself.
> Here are some.
> Some of them are failing, feedback welcome.
> See as well the attached state diagram for the ZK nodes on assignment.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to