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

Yi Liang commented on HBASE-18105:
----------------------------------

[~stack],  sorry for the later response. 

{quote}marking a parent region as split in a column in hbase:meta would go w/ 
our writing of splitA and splitB as hbase:meta columns better than setting flag 
in HRI.{quote}
This seems a good idea, I will do some research to see if this is doable.

And I have another question about PONR,  before AMv2,PONR may happen during 
SPLIT_UPDATE_META step, I read the branch 1 code,  but still not clear about 
why this PONR could happen 

I see you file some jiras about this PONR, could you illustrate a little bit, 
so I will see if we can remove it as you suggest in the jira description, 
thanks 




> [AMv2] Split/Merge need cleanup; currently they diverge and do not fully 
> embrace AMv2 world
> -------------------------------------------------------------------------------------------
>
>                 Key: HBASE-18105
>                 URL: https://issues.apache.org/jira/browse/HBASE-18105
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Region Assignment
>    Affects Versions: 2.0.0
>            Reporter: stack
>             Fix For: 2.0.0
>
>
> Region Split and Merge work on the new AMv2 but they work differently. This 
> issue is about bringing them back together and fully embracing the AMv2 
> program.
> They both have issues mostly the fact that they carry around baggage no 
> longer necessary in the new world of assignment.
> Here are some of the items:
> Split and Merge metadata modifications are done by the Master now but we have 
> vestige of Split/Merge on RS still; e.g. when we SPLIT, we ask the Master 
> which asks the RS, which turns around, and asks the Master to run the 
> operation. Fun. MERGE is all done Master-side.
>  
> Clean this up. Remove asking RS to run SPLIT and remove RegionMergeRequest, 
> etc. on RS-side. Also remove PONR. We don’t Points-Of-No-Return now we are up 
> on Pv2. Remove all calls in Interfaces; they are unused. Make RS still able 
> to detect when split, but have it be a client of Master like anyone else.
> Split is Async but does not return procId
> Split is async. Doesn’t return the procId though. Merge does. Fix. Only hard 
> part here I think is the Admin API does not allow procid return.
> Flags
> Currently OFFLINE is determined by looking either at the master instance of 
> HTD (isOffline) and/or at the RegionState#state. Ditto for SPLIT. For MERGE, 
> we rely on RegionState#state. Related is a note above on how split works -- 
> there is a split flag in HTD when there should not be.
>  
> TODO is move to rely on RegionState#state exclusively in Master.
> From Split/Merge Procedures need finishing in 
> https://docs.google.com/document/d/1eVKa7FHdeoJ1-9o8yZcOTAQbv0u0bblBlCCzVSIn69g/edit#heading=h.4b60dc1h4m1f



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

Reply via email to