Repository: hbase
Updated Branches:
  refs/heads/master 70f02dbc7 -> 6ab8ce982


Revert "HBASE-18352 Enable 
TestMasterOperationsForRegionReplicas#testCreateTableWithMultipleReplicas"

Pushed prematurely

This reverts commit 1a173f820b739d78e2634d0ded4b1f43188ddd27.


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/6ab8ce98
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/6ab8ce98
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/6ab8ce98

Branch: refs/heads/master
Commit: 6ab8ce9829fde7ad95e36e3beb6a323140117765
Parents: 70f02db
Author: Michael Stack <st...@apache.org>
Authored: Thu Dec 14 14:17:20 2017 -0800
Committer: Michael Stack <st...@apache.org>
Committed: Thu Dec 14 14:17:20 2017 -0800

----------------------------------------------------------------------
 .../hadoop/hbase/HBaseTestingUtility.java       | 21 ++++--------
 .../apache/hadoop/hbase/MiniHBaseCluster.java   | 20 +++--------
 .../TestMasterOperationsForRegionReplicas.java  | 35 +++++++-------------
 3 files changed, 23 insertions(+), 53 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/6ab8ce98/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
index db1219d..2488d20 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
@@ -967,28 +967,21 @@ public class HBaseTestingUtility extends 
HBaseZKTestingUtility {
     }
 
     // Start the MiniHBaseCluster
-    return startMiniHBaseCluster(numMasters, numSlaves, null, masterClass,
+    return startMiniHBaseCluster(numMasters, numSlaves, masterClass,
       regionserverClass, create, withWALDir);
   }
 
   public MiniHBaseCluster startMiniHBaseCluster(final int numMasters, final 
int numSlaves)
-      throws IOException, InterruptedException {
-     return startMiniHBaseCluster(numMasters, numSlaves, null);
-  }
-
-  public MiniHBaseCluster startMiniHBaseCluster(final int numMasters, final 
int numSlaves,
-      List<Integer> rsPorts) throws IOException, InterruptedException {
-    return startMiniHBaseCluster(numMasters, numSlaves, rsPorts, null, null, 
false, false);
+      throws IOException, InterruptedException{
+    return startMiniHBaseCluster(numMasters, numSlaves, null, null, false, 
false);
   }
 
   /**
    * Starts up mini hbase cluster.  Usually used after call to
    * {@link #startMiniCluster(int, int)} when doing stepped startup of 
clusters.
    * Usually you won't want this.  You'll usually want {@link 
#startMiniCluster()}.
-   * @param rsPorts Ports that RegionServer should use; pass ports if you want 
to test cluster
-   *                restart where for sure the regionservers come up on same 
address+port (but
-   *                just with different startcode); by default mini hbase 
clusters choose new
-   *                arbitrary ports on each cluster start.
+   * @param numMasters
+   * @param numSlaves
    * @param create Whether to create a
    * root or data directory path or not; will overwrite if exists already.
    * @return Reference to the hbase mini hbase cluster.
@@ -997,7 +990,7 @@ public class HBaseTestingUtility extends 
HBaseZKTestingUtility {
    * @see {@link #startMiniCluster()}
    */
   public MiniHBaseCluster startMiniHBaseCluster(final int numMasters,
-        final int numSlaves, List<Integer> rsPorts, Class<? extends HMaster> 
masterClass,
+        final int numSlaves, Class<? extends HMaster> masterClass,
         Class<? extends MiniHBaseCluster.MiniHBaseClusterRegionServer> 
regionserverClass,
         boolean create, boolean withWALDir)
   throws IOException, InterruptedException {
@@ -1022,7 +1015,7 @@ public class HBaseTestingUtility extends 
HBaseZKTestingUtility {
     Configuration c = new Configuration(this.conf);
     TraceUtil.initTracer(c);
     this.hbaseCluster =
-        new MiniHBaseCluster(c, numMasters, numSlaves, rsPorts, masterClass, 
regionserverClass);
+        new MiniHBaseCluster(c, numMasters, numSlaves, masterClass, 
regionserverClass);
     // Don't leave here till we've done a successful scan of the hbase:meta
     Table t = getConnection().getTable(TableName.META_TABLE_NAME);
     ResultScanner s = t.getScanner(new Scan());

http://git-wip-us.apache.org/repos/asf/hbase/blob/6ab8ce98/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
index 3f85181..e02347d 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
@@ -77,19 +77,10 @@ public class MiniHBaseCluster extends HBaseCluster {
    */
   public MiniHBaseCluster(Configuration conf, int numMasters, int 
numRegionServers)
       throws IOException, InterruptedException {
-    this(conf, numMasters, numRegionServers, null, null, null);
+    this(conf, numMasters, numRegionServers, null, null);
   }
 
-  /**
-   * @param rsPorts Ports that RegionServer should use; pass ports if you want 
to test cluster
-   *   restart where for sure the regionservers come up on same address+port 
(but
-   *   just with different startcode); by default mini hbase clusters choose 
new
-   *   arbitrary ports on each cluster start.
-   * @throws IOException
-   * @throws InterruptedException
-   */
   public MiniHBaseCluster(Configuration conf, int numMasters, int 
numRegionServers,
-         List<Integer> rsPorts,
          Class<? extends HMaster> masterClass,
          Class<? extends MiniHBaseCluster.MiniHBaseClusterRegionServer> 
regionserverClass)
       throws IOException, InterruptedException {
@@ -102,7 +93,7 @@ public class MiniHBaseCluster extends HBaseCluster {
     // Hadoop 2
     CompatibilityFactory.getInstance(MetricsAssertHelper.class).init();
 
-    init(numMasters, numRegionServers, rsPorts, masterClass, 
regionserverClass);
+    init(numMasters, numRegionServers, masterClass, regionserverClass);
     this.initialClusterStatus = getClusterStatus();
   }
 
@@ -216,7 +207,7 @@ public class MiniHBaseCluster extends HBaseCluster {
     }
   }
 
-  private void init(final int nMasterNodes, final int nRegionNodes, 
List<Integer> rsPorts,
+  private void init(final int nMasterNodes, final int nRegionNodes,
                  Class<? extends HMaster> masterClass,
                  Class<? extends 
MiniHBaseCluster.MiniHBaseClusterRegionServer> regionserverClass)
   throws IOException, InterruptedException {
@@ -233,11 +224,8 @@ public class MiniHBaseCluster extends HBaseCluster {
           masterClass, regionserverClass);
 
       // manually add the regionservers as other users
-      for (int i = 0; i < nRegionNodes; i++) {
+      for (int i=0; i<nRegionNodes; i++) {
         Configuration rsConf = HBaseConfiguration.create(conf);
-        if (rsPorts != null) {
-          rsConf.setInt(HConstants.REGIONSERVER_PORT, rsPorts.get(i));
-        }
         User user = HBaseTestingUtility.getDifferentUser(rsConf,
             ".hfs."+index++);
         hbaseCluster.addRegionServer(rsConf, i, user);

http://git-wip-us.apache.org/repos/asf/hbase/blob/6ab8ce98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.java
index dd0fada..c4e9a0a 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.java
@@ -19,13 +19,9 @@
 package org.apache.hadoop.hbase.master;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
 import java.util.EnumSet;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
@@ -54,11 +50,9 @@ import org.apache.hadoop.hbase.client.RegionInfo;
 import org.apache.hadoop.hbase.client.RegionReplicaUtil;
 import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.Table;
-import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.hadoop.hbase.testclassification.MasterTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.apache.hadoop.hbase.util.JVMClusterUtil;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Ignore;
@@ -180,18 +174,12 @@ public class TestMasterOperationsForRegionReplicas {
       }
       validateFromSnapshotFromMeta(TEST_UTIL, tableName, numRegions, 
numReplica,
         ADMIN.getConnection());
+      /* DISABLED!!!!! FOR NOW!!!!
       // Now shut the whole cluster down, and verify the assignments are kept 
so that the
-      // availability constraints are met. MiniHBaseCluster chooses arbitrary 
ports on each
-      // restart. This messes with our being able to test that we retain 
locality. Therefore,
-      // figure current cluster ports and pass them in on next cluster start 
so new cluster comes
-      // up at same coordinates -- and the assignment retention logic has a 
chance to cut in.
-      List<Integer> rsports = new ArrayList<>();
-      for (JVMClusterUtil.RegionServerThread rst:
-          TEST_UTIL.getHBaseCluster().getLiveRegionServerThreads()) {
-        
rsports.add(rst.getRegionServer().getRpcServer().getListenerAddress().getPort());
-      }
+      // availability constraints are met.
+      
TEST_UTIL.getConfiguration().setBoolean("hbase.master.startup.retainassign", 
true);
       TEST_UTIL.shutdownMiniHBaseCluster();
-      TEST_UTIL.startMiniHBaseCluster(1, numSlaves, rsports);
+      TEST_UTIL.startMiniHBaseCluster(1, numSlaves);
       TEST_UTIL.waitTableEnabled(tableName);
       validateFromSnapshotFromMeta(TEST_UTIL, tableName, numRegions, 
numReplica,
         ADMIN.getConnection());
@@ -215,10 +203,10 @@ public class TestMasterOperationsForRegionReplicas {
       ADMIN.enableTable(tableName);
       LOG.info(ADMIN.getTableDescriptor(tableName).toString());
       assert(ADMIN.isTableEnabled(tableName));
-      List<RegionInfo> regions = TEST_UTIL.getMiniHBaseCluster().getMaster().
-          
getAssignmentManager().getRegionStates().getRegionsOfTable(tableName);
-      assertTrue("regions.size=" + regions.size() + ", numRegions=" + 
numRegions +
-          ", numReplica=" + numReplica, regions.size() == numRegions * 
(numReplica + 1));
+      List<RegionInfo> regions = TEST_UTIL.getMiniHBaseCluster().getMaster()
+          
.getAssignmentManager().getRegionStates().getRegionsOfTable(tableName);
+      assertTrue("regions.size=" + regions.size() + ", numRegions=" + 
numRegions + ", numReplica=" + numReplica,
+          regions.size() == numRegions * (numReplica + 1));
 
       //decrease the replica(earlier, table was modified to have a replica 
count of numReplica + 1)
       ADMIN.disableTable(tableName);
@@ -245,6 +233,7 @@ public class TestMasterOperationsForRegionReplicas {
       assert(defaultReplicas.size() == numRegions);
       Collection<Integer> counts = new HashSet<>(defaultReplicas.values());
       assert(counts.size() == 1 && counts.contains(new Integer(numReplica)));
+      */
     } finally {
       ADMIN.disableTable(tableName);
       ADMIN.deleteTable(tableName);
@@ -353,14 +342,14 @@ public class TestMasterOperationsForRegionReplicas {
       connection);
     snapshot.initialize();
     Map<RegionInfo, ServerName>  regionToServerMap = 
snapshot.getRegionToRegionServerMap();
-    assertEquals(regionToServerMap.size(), numRegions * numReplica + 1);
+    assertEquals(regionToServerMap.size(), numRegions * numReplica + 1); //'1' 
for the namespace
     Map<ServerName, List<RegionInfo>> serverToRegionMap = 
snapshot.getRegionServerToRegionMap();
-    assertEquals("One Region Only", 1, serverToRegionMap.keySet().size());
+    assertEquals(serverToRegionMap.keySet().size(), 2); // 1 rs + 1 master
     for (Map.Entry<ServerName, List<RegionInfo>> entry : 
serverToRegionMap.entrySet()) {
       if 
(entry.getKey().equals(TEST_UTIL.getHBaseCluster().getMaster().getServerName()))
 {
         continue;
       }
-      assertEquals(entry.getValue().size(), numRegions * numReplica + 1);
+      assertEquals(entry.getValue().size(), numRegions * numReplica);
     }
   }
 }

Reply via email to