[ 
https://issues.apache.org/jira/browse/HBASE-19127?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yi Liang updated HBASE-19127:
-----------------------------
    Attachment: state.patch

Try unit test, 
[~stack] [~jerryhe],  I found some issues about regionstates especially about 
the intermediate state.

In the patch, I removed MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS, this 
MERGE_TABLE_REGIONS_MOVE_REGION_TO_SAME_RS has never been used.

and also removed MERGE_TABLE_REGIONS_SET_MERGING_TABLE_STATE,  And the method 
under this step is commented out, so nothing will be done under this step. And 
I think we do not need to have a specific step for it.

After read RegionState.java; Set above states follow rules below

1. SPLITTING => After check the parent regions is splittable, set it to parent 
region
2. SPLITTING_NEW => Set it after create daughter regions and before Assign 
these daughters as OPEN in their region states.
3. Merging => After check 2 parent regions are mergeable, set it to both parent 
regions.
4. Merging_new => After create merged regions and before assign it as OPEN.

above states won't affect the real procedure work, we set it because in the 
metrics will use them, and also RegionStates need to keep latest/correct state. 

> Set State.SPLITTING, MERGING, MERGING_NEW, SPLITTING_NEW properly in 
> RegionStatesNode
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-19127
>                 URL: https://issues.apache.org/jira/browse/HBASE-19127
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Yi Liang
>            Assignee: Yi Liang
>         Attachments: state.patch
>
>
> In current code, we did not set above states to a region node at all, but we 
> still have statements like below to check if node have above states.
> {code}
> else if (!regionNode.isInState(State.CLOSING, State.SPLITTING)) {
> ....
> }
> {code}
> We need to set above states in a correct place.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to