[
https://issues.apache.org/jira/browse/HBASE-28567?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang resolved HBASE-28567.
-------------------------------
Fix Version/s: 2.4.18
2.7.0
3.0.0-beta-2
2.6.1
2.5.9
Hadoop Flags: Reviewed
Resolution: Fixed
Pushed to all active branches.
Thanks [~vincentpoon] for contributing and [~vjasani] for reviewing!
> Race condition causes MetaRegionLocationCache to never set watcher to
> populate meta location
> --------------------------------------------------------------------------------------------
>
> Key: HBASE-28567
> URL: https://issues.apache.org/jira/browse/HBASE-28567
> Project: HBase
> Issue Type: Bug
> Affects Versions: 3.0.0, 2.5.8
> Reporter: Vincent Poon
> Assignee: Vincent Poon
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.4.18, 2.7.0, 3.0.0-beta-2, 2.6.1, 2.5.9
>
>
> {{ZKWatcher#getMetaReplicaNodesAndWatchChildren()}} attempts to set a a watch
> on the base /hbase znode children using
> {{ZKUtil.listChildrenAndWatchForNewChildren()}}, but if the node does not
> exist, no watch gets set.
> We've seen this in the test container Trino uses over at
> [trino/21569|https://github.com/trinodb/trino/pull/21569] , where ZK, master,
> and RS are all run in the same container.
> The fix is to throw if the node does not exist so that
> {{MetaRegionLocationCache}} can retry until the node gets created.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)