[
https://issues.apache.org/jira/browse/HBASE-7923?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13589202#comment-13589202
]
ramkrishna.s.vasudevan commented on HBASE-7923:
-----------------------------------------------
This unassign() from admin is a bit tricky one. I remember we tried to check
this some time back.
So one doubt i have is just calling unassign() will finally call
ClosedRegionHandler which will assign it anyway.
So now if you see, both close = true and close = false ends up in same
behaviour ? Correct me if am wrong.
> force unassign can confirm region online on any RS to get rid of double
> assignments.
> ------------------------------------------------------------------------------------
>
> Key: HBASE-7923
> URL: https://issues.apache.org/jira/browse/HBASE-7923
> Project: HBase
> Issue Type: Improvement
> Reporter: rajeshbabu
> Assignee: rajeshbabu
> Fix For: 0.95.0
>
> Attachments: HBASE-7923_2.patch, HBASE-7923.patch
>
>
> Presently in force unassign we are offlining a region from AM and reassigning
> it, which may cause double assignments.
> {code}
> this.assignmentManager.regionOffline(hri);
> assignRegion(hri);
> {code}
> Any way if a region is not served by any RS we are offlining the region from
> AM.
> {code}
> if (t instanceof NotServingRegionException) {
> if (transitionInZK) {
> deleteClosingOrClosedNode(region);
> }
> regionOffline(region);
> return;
> }
> {code}
> We can change as below just to confirm whether region online on any RS.
> {code}
> this.assignmentManager.unassign(hri,force);
> if(!this.assignmentManager.getRegionStates().isRegionInTransition(hri) &&
> !this.assignmentManager.getRegionStates().isRegionAssigned(hri) ){
> assignRegion(hri);
> }
> {code}
--
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