Huginn-kio opened a new pull request, #8664:
URL: https://github.com/apache/hbase/pull/8664

   ## HBASE-27878
   
   ### Summary
   
   `balance_rsgroup` can fail with a NullPointerException when an assignment 
has no current
   region server. This change skips regions without a current server while 
building the
   RSGroup balancer input.
   
   https://issues.apache.org/jira/browse/HBASE-27878
   
   ### Root cause
   
   `RSGroupInfoManagerImpl#getRSGroupAssignmentsByTable` copied entries from
   `RegionStates#getRegionAssignments()` without filtering a null `ServerName`.
   `RSGroupBasedLoadBalancer#correctAssignments` then calls `getAddress()` on 
each
   server key.
   
   ### Fix
   
   - Ignore assignments whose current server is null before adding them to the 
RSGroup
     balancer input.
   - Add a regression test covering a region with a null current server and 
preserving
     disabled-table filtering.
   
   ### Testing
   
   - Failing-before-fix evidence: 
`TestRSGroupsBalance#testGetRSGroupAssignmentsByTable`
     failed on the null-server assertion.
   - Passing-after-fix evidence: the same test passed with 1 test run, 0 
failures, and
     0 errors.
   - Neighbor regression slice: `TestRSGroupsBalance` passed with 4 tests, 0 
failures,
     and 0 errors.
   - RAT passed with 0 unapproved or unknown licenses.
   - SpotBugs passed with 0 bugs and 0 errors.
   - Diff-level Checkstyle is clean. A module-wide Checkstyle run reports 
pre-existing
     violations outside this change.
   
   ### Compatibility
   
   - Public API impact: none.
   - Config impact: none.
   - Persisted format impact: none.
   - Wire format impact: none.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to