[
https://issues.apache.org/jira/browse/HBASE-24517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang resolved HBASE-24517.
-------------------------------
Hadoop Flags: Reviewed
Resolution: Fixed
Pushed to branch-2.2+.
Thanks all for reviewing.
> AssignmentManager.start should add meta region to ServerStateNode
> -----------------------------------------------------------------
>
> Key: HBASE-24517
> URL: https://issues.apache.org/jira/browse/HBASE-24517
> Project: HBase
> Issue Type: Bug
> Components: amv2
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Priority: Critical
> Fix For: 3.0.0-alpha-1, 2.3.0, 2.2.6
>
>
> In AssignmentManager.start, we will load the meta region state and location
> from zk and create the RegionStateNode, but we forget to call
> regionStates.addRegionToServer to add the region to the region server.
> Found this when implementing HBASE-24390. As in HBASE-24390, we will remove
> RegionInfoBuilder.FIRST_META_REGIONINFO so in SCP, we need to use the
> getRegionsOnServer instead of RegionInfoBuilder.FIRST_META_REGIONINFO when
> assigning meta, so the bug becomes a real problem.
> Though it is not a big problem for SCP for current 2.x and master branches,
> it is a high risky bug. For example, in AssignmentManager.submitServerCrash,
> now we use the RegionStateNode of meta regions to determine whether the given
> region server carries meta regions. But it is also valid to test through the
> ServerStateNode's region list. If later we change this method to use
> ServerStateNode, it will cause very serious data loss bug.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)