Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
Reviewed
Description
AM chooses highest version region servers as participants for system tables, including META table. If system table group has no highest version region servers, then the reassignment of their regions will be always the BOGUS server defined in RSGroup.
In our test environment using branch-2.2, we isolate system tables in a rsgroup containing only one server. And when upgrading RSs, we have met the problem that META is always assigned to the BOGUS server while the group server has already been online for a while. META RIT is stuck and can not be recovered by hbck2.
I made a UT reproduce this problem, steps are:
1. add a group, move 1 server to it;
2. move meta table to the group;
3. restart the group server and downgrade its version;
4. meta rit stuck.
ROOT cause is AM filters highest version RSs for system tables. So if we do not change the versions of system table group servers, but upgrade the versions of other group servers, then if there is reassignment for any system tables, such as balancer moving their regions, RIT STUCK!!
Attachments
Issue Links
- relates to
-
HBASE-23193 ConnectionImplementation.isTableAvailable can not deal with meta table on branch-2.x
- Resolved
- links to