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

Hudson commented on HBASE-30331:
--------------------------------

Results for branch master
        [build #149 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase-Integration-Test/job/master/149/]:
 (/) *{color:green}+1 overall{color}*
----
details (if available):



(/) {color:green}+1 client integration test for 3.3.5 {color}
(/) {color:green}+1 client integration test for 3.3.5 with shaded hadoop 
client{color}


(/) {color:green}+1 client integration test for 3.3.6 {color}
(/) {color:green}+1 client integration test for 3.3.6 with shaded hadoop 
client{color}


(/) {color:green}+1 client integration test for 3.4.0 {color}
(/) {color:green}+1 client integration test for 3.4.0 with shaded hadoop 
client{color}


(/) {color:green}+1 client integration test for 3.4.1 {color}
(/) {color:green}+1 client integration test for 3.4.1 with shaded hadoop 
client{color}


(/) {color:green}+1 client integration test for 3.4.2 {color}
(/) {color:green}+1 client integration test for 3.4.2 with shaded hadoop 
client{color}


(/) {color:green}+1 client integration test for 3.4.3 {color}
(/) {color:green}+1 client integration test for 3.4.3 with shaded hadoop 
client{color}


> Remove RegionMover.filterRSGroupServers's short-circuit on default RSGroup
> --------------------------------------------------------------------------
>
>                 Key: HBASE-30331
>                 URL: https://issues.apache.org/jira/browse/HBASE-30331
>             Project: HBase
>          Issue Type: Bug
>          Components: rsgroup
>    Affects Versions: 3.0.0
>            Reporter: Umesh Kumar Kumawat
>            Assignee: Umesh Kumar Kumawat
>            Priority: Minor
>              Labels: pull-request-available
>             Fix For: 4.0.0-alpha-1, 3.1.0, 3.0.1
>
>
> Problem
>   RegionMover.filterRSGroupServers() in hbase-server contains a short-circuit 
> for the default RSGroup:
>   // RegionMover.java line 530
>   if (rsgroup.getName().equals(RSGroupInfo.DEFAULT_GROUP)) {
>     return onlineServers;   // returns ALL online servers — including 
> custom-group servers
>   }
>   When unloadRegions() is called on a server that belongs to the default 
> RSGroup, filterRSGroupServers skips the membership check and returns every 
> live RegionServer as a valid move target — including
>   servers in custom RSGroups. HMaster's RSGroup-aware balancer will 
> eventually move those regions back to the correct group, but RegionMover is 
> causing work that the master then has to undo.
>   Root Cause
>   The short-circuit was added as an optimization: on a cluster where all 
> servers are in the default group, iterating the membership set is redundant. 
> However, once any server is moved to a custom RSGroup,
>   the default-group filter no longer reflects actual membership — it 
> over-includes servers that have left the default group.
>   Impact
>   - A RegionMover unload on a default-group server may place regions onto 
> custom-group servers.
>   - HMaster detects the misplacement and moves those regions back via the 
> RSGroup-aware balancer, causing an unnecessary round of region transitions 
> and load imbalance during the window between RegionMover
>   finishing and the next balancer cycle.
>   - Affects any cluster that uses RSGroups and runs RegionMover (rolling 
> restarts, decommission workflows).
>  
>  The corresponding fix for branch-2 was shipped as part of HBASE-30323. This 
> ticket tracks the same correction on master/branch-3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to