You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zh...@apache.org on 2026/09/29 15:21:18 UTC
(hbase) branch branch-3 updated: HBASE-30435 Remove zk dependency in RegionMover (#8713)
This is an automated email from the ASF dual-hosted git repository.
Apache9 pushed a commit to branch branch-3
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-3 by this push:
new a273048fe50 HBASE-30435 Remove zk dependency in RegionMover (#8713)
a273048fe50 is described below
commit a273048fe50180262d024dc8c45f2be90c3344e5
Author: Duo Zhang <zh...@apache.org>
AuthorDate: Tue Sep 29 22:56:50 2026 +0800
HBASE-30435 Remove zk dependency in RegionMover (#8713)
Co-authored-by: MiMo V2.6 Pro <mi...@xiaomi.com>
Signed-off-by: Xiao Liu <li...@apache.org>
(cherry picked from commit 6799c26515c9597848c6d0600d3a86717f7c91d1)
---
.../java/org/apache/hadoop/hbase/util/RegionMover.java | 14 ++------------
.../org/apache/hadoop/hbase/util/TestRegionMover2.java | 14 ++------------
2 files changed, 4 insertions(+), 24 deletions(-)
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/RegionMover.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/RegionMover.java
index 37c114fca0f..036e72f2d00 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/RegionMover.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/RegionMover.java
@@ -67,13 +67,9 @@ import org.apache.hadoop.hbase.client.RegionInfo;
import org.apache.hadoop.hbase.client.RegionInfoBuilder;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.master.RackManager;
-import org.apache.hadoop.hbase.master.RegionState;
import org.apache.hadoop.hbase.master.assignment.AssignmentManager;
import org.apache.hadoop.hbase.net.Address;
import org.apache.hadoop.hbase.rsgroup.RSGroupInfo;
-import org.apache.hadoop.hbase.zookeeper.MetaTableLocator;
-import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-import org.apache.hadoop.hbase.zookeeper.ZNodePaths;
import org.apache.yetus.audience.InterfaceAudience;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -576,14 +572,8 @@ public class RegionMover extends AbstractHBaseTool implements Closeable {
}
// If hbase:meta region was isolated, then it needs to be part of isolateRegionInfoList.
if (isMetaIsolated) {
- ZKWatcher zkWatcher = new ZKWatcher(conf, null, null);
- List<HRegionLocation> result = new ArrayList<>();
- for (String znode : zkWatcher.getMetaReplicaNodes()) {
- String path = ZNodePaths.joinZNode(zkWatcher.getZNodePaths().baseZNode, znode);
- int replicaId = zkWatcher.getZNodePaths().getMetaReplicaIdFromPath(path);
- RegionState state = MetaTableLocator.getMetaRegionState(zkWatcher, replicaId);
- result.add(new HRegionLocation(state.getRegion(), state.getServerName()));
- }
+ List<HRegionLocation> result =
+ conn.getRegionLocator(TableName.META_TABLE_NAME).getAllRegionLocations();
ServerName metaSeverName = result.get(0).getServerName();
// For isolating hbase:meta, it should move explicitly in Ack mode,
// hence the forceMoveRegionByAck = true.
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionMover2.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionMover2.java
index 6e245b8deff..dd0bb24b06a 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionMover2.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionMover2.java
@@ -40,7 +40,6 @@ import org.apache.hadoop.hbase.client.RegionInfoBuilder;
import org.apache.hadoop.hbase.client.Table;
import org.apache.hadoop.hbase.client.TableDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
-import org.apache.hadoop.hbase.master.RegionState;
import org.apache.hadoop.hbase.master.assignment.AssignmentManager;
import org.apache.hadoop.hbase.master.assignment.TransitRegionStateProcedure;
import org.apache.hadoop.hbase.master.procedure.ProcedureSyncWait;
@@ -48,9 +47,6 @@ import org.apache.hadoop.hbase.regionserver.HRegion;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.testclassification.LargeTests;
import org.apache.hadoop.hbase.testclassification.MiscTests;
-import org.apache.hadoop.hbase.zookeeper.MetaTableLocator;
-import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-import org.apache.hadoop.hbase.zookeeper.ZNodePaths;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
@@ -345,14 +341,8 @@ public class TestRegionMover2 {
}
public ServerName findMetaRSLocation() throws Exception {
- ZKWatcher zkWatcher = new ZKWatcher(TEST_UTIL.getConfiguration(), null, null);
- List<HRegionLocation> result = new ArrayList<>();
- for (String znode : zkWatcher.getMetaReplicaNodes()) {
- String path = ZNodePaths.joinZNode(zkWatcher.getZNodePaths().baseZNode, znode);
- int replicaId = zkWatcher.getZNodePaths().getMetaReplicaIdFromPath(path);
- RegionState state = MetaTableLocator.getMetaRegionState(zkWatcher, replicaId);
- result.add(new HRegionLocation(state.getRegion(), state.getServerName()));
- }
+ List<HRegionLocation> result =
+ TEST_UTIL.getConnection().getRegionLocator(TableName.META_TABLE_NAME).getAllRegionLocations();
return result.get(0).getServerName();
}