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 2021/07/31 07:00:57 UTC

[hbase] 02/02: HBASE-26098 Support passing a customized Configuration object when creating TestingHBaseCluster (#3540)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit ecb28ee96e97fa16b26510f05d74c4aa23cfc226
Author: Duo Zhang <zh...@apache.org>
AuthorDate: Sat Jul 31 14:34:17 2021 +0800

    HBASE-26098 Support passing a customized Configuration object when creating TestingHBaseCluster (#3540)
    
    Signed-off-by: Yulin Niu <ni...@apache.org>
---
 .../hbase/testing/TestingHBaseClusterImpl.java     |  3 ++-
 .../hbase/testing/TestingHBaseClusterOption.java   | 24 +++++++++++++++++++---
 2 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.java b/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.java
index 591aaa8..73b8cbd 100644
--- a/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.java
+++ b/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.java
@@ -35,7 +35,7 @@ import org.apache.hbase.thirdparty.com.google.common.util.concurrent.ThreadFacto
 @InterfaceAudience.Private
 class TestingHBaseClusterImpl implements TestingHBaseCluster {
 
-  private final HBaseTestingUtility util = new HBaseTestingUtility();
+  private final HBaseTestingUtility util;
 
   private final StartMiniClusterOption option;
 
@@ -47,6 +47,7 @@ class TestingHBaseClusterImpl implements TestingHBaseCluster {
   private boolean miniHBaseClusterRunning = false;
 
   TestingHBaseClusterImpl(TestingHBaseClusterOption option) {
+    this.util = new HBaseTestingUtility(option.conf());
     this.option = option.convert();
   }
 
diff --git a/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.java b/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.java
index ce7daac..14a0efb 100644
--- a/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.java
+++ b/hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.testing;
 import java.util.Arrays;
 import java.util.List;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.StartMiniClusterOption;
 import org.apache.yetus.audience.InterfaceAudience;
 
@@ -40,6 +41,11 @@ import org.apache.yetus.audience.InterfaceAudience;
 public final class TestingHBaseClusterOption {
 
   /**
+   * Configuration for this testing cluster. Can be {@code null}.
+   */
+  private final Configuration conf;
+
+  /**
    * Number of masters to start up. We'll start this many hbase masters.
    */
   private final int numMasters;
@@ -95,9 +101,10 @@ public final class TestingHBaseClusterOption {
   /**
    * Private constructor. Use {@link Builder#build()}.
    */
-  private TestingHBaseClusterOption(int numMasters, int numAlwaysStandByMasters,
+  private TestingHBaseClusterOption(Configuration conf, int numMasters, int numAlwaysStandByMasters,
     int numRegionServers, List<Integer> rsPorts, int numDataNodes, String[] dataNodeHosts,
     int numZkServers, boolean createRootDir, boolean createWALDir) {
+    this.conf = conf;
     this.numMasters = numMasters;
     this.numAlwaysStandByMasters = numAlwaysStandByMasters;
     this.numRegionServers = numRegionServers;
@@ -109,6 +116,10 @@ public final class TestingHBaseClusterOption {
     this.createWALDir = createWALDir;
   }
 
+  public Configuration conf() {
+    return conf;
+  }
+
   public int getNumMasters() {
     return numMasters;
   }
@@ -176,6 +187,7 @@ public final class TestingHBaseClusterOption {
    * tests fail.
    */
   public static final class Builder {
+    private Configuration conf;
     private int numMasters = 1;
     private int numAlwaysStandByMasters = 0;
     private int numRegionServers = 1;
@@ -193,8 +205,14 @@ public final class TestingHBaseClusterOption {
       if (dataNodeHosts != null && dataNodeHosts.length != 0) {
         numDataNodes = dataNodeHosts.length;
       }
-      return new TestingHBaseClusterOption(numMasters, numAlwaysStandByMasters, numRegionServers,
-        rsPorts, numDataNodes, dataNodeHosts, numZkServers, createRootDir, createWALDir);
+      return new TestingHBaseClusterOption(conf, numMasters, numAlwaysStandByMasters,
+        numRegionServers, rsPorts, numDataNodes, dataNodeHosts, numZkServers, createRootDir,
+        createWALDir);
+    }
+
+    public Builder conf(Configuration conf) {
+      this.conf = conf;
+      return this;
     }
 
     public Builder numMasters(int numMasters) {