You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by mm...@apache.org on 2020/09/25 19:53:28 UTC

[accumulo] branch compact-its created (now 5aa333b)

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

mmiller pushed a change to branch compact-its
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


      at 5aa333b  Stop ITs with compactions running in Standalone

This branch includes the following new commits:

     new 5aa333b  Stop ITs with compactions running in Standalone

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[accumulo] 01/01: Stop ITs with compactions running in Standalone

Posted by mm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch compact-its
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit 5aa333b2452cc603f6d2feed6c99d94655d5a263
Author: Mike Miller <mm...@apache.org>
AuthorDate: Fri Sep 25 15:49:05 2020 -0400

    Stop ITs with compactions running in Standalone
    
    * Prevent several ITs that have compaction behavior from running in
    standalone mode by overriding the canRunTest method.  These tests
    currently don't work well in standalone mode and fail.
---
 .../org/apache/accumulo/test/IteratorEnvIT.java    |  8 +++-
 .../test/RecoveryCompactionsAreFlushesIT.java      |  5 +++
 .../apache/accumulo/test/TableOperationsIT.java    | 13 ++++--
 .../accumulo/test/UserCompactionStrategyIT.java    | 13 ++++--
 .../accumulo/test/functional/CompactionIT.java     | 49 +++-------------------
 .../accumulo/test/functional/MasterMetricsIT.java  |  8 +++-
 .../apache/accumulo/test/functional/SummaryIT.java |  5 +++
 7 files changed, 48 insertions(+), 53 deletions(-)

diff --git a/test/src/main/java/org/apache/accumulo/test/IteratorEnvIT.java b/test/src/main/java/org/apache/accumulo/test/IteratorEnvIT.java
index b8d5c2e..3dbfe5d 100644
--- a/test/src/main/java/org/apache/accumulo/test/IteratorEnvIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/IteratorEnvIT.java
@@ -54,6 +54,11 @@ import org.junit.Test;
 public class IteratorEnvIT extends AccumuloClusterHarness {
 
   @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
+  @Override
   public void configureMiniCluster(MiniAccumuloConfigImpl cfg, Configuration hadoopCoreSite) {
     cfg.setNumTservers(1);
   }
@@ -168,7 +173,8 @@ public class IteratorEnvIT extends AccumuloClusterHarness {
 
   @After
   public void finish() {
-    client.close();
+    if (client != null)
+      client.close();
   }
 
   @Test
diff --git a/test/src/main/java/org/apache/accumulo/test/RecoveryCompactionsAreFlushesIT.java b/test/src/main/java/org/apache/accumulo/test/RecoveryCompactionsAreFlushesIT.java
index 8bd87ff..f89bf7a 100644
--- a/test/src/main/java/org/apache/accumulo/test/RecoveryCompactionsAreFlushesIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/RecoveryCompactionsAreFlushesIT.java
@@ -47,6 +47,11 @@ import com.google.common.collect.Iterators;
 public class RecoveryCompactionsAreFlushesIT extends AccumuloClusterHarness {
 
   @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
+  @Override
   public int defaultTimeoutSeconds() {
     return 180;
   }
diff --git a/test/src/main/java/org/apache/accumulo/test/TableOperationsIT.java b/test/src/main/java/org/apache/accumulo/test/TableOperationsIT.java
index 89170cb..ff1fdc6 100644
--- a/test/src/main/java/org/apache/accumulo/test/TableOperationsIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/TableOperationsIT.java
@@ -60,7 +60,6 @@ import org.apache.accumulo.core.data.PartialKey;
 import org.apache.accumulo.core.data.Value;
 import org.apache.accumulo.core.security.Authorizations;
 import org.apache.accumulo.core.security.TablePermission;
-import org.apache.accumulo.core.tabletserver.thrift.TabletClientService;
 import org.apache.accumulo.harness.AccumuloClusterHarness;
 import org.apache.accumulo.test.functional.BadIterator;
 import org.apache.accumulo.test.functional.FunctionalTestUtils;
@@ -74,10 +73,14 @@ import com.google.common.collect.Sets;
 
 public class TableOperationsIT extends AccumuloClusterHarness {
 
-  static TabletClientService.Client client;
   private AccumuloClient accumuloClient;
 
   @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
+  @Override
   public int defaultTimeoutSeconds() {
     return 90;
   }
@@ -89,8 +92,10 @@ public class TableOperationsIT extends AccumuloClusterHarness {
 
   @After
   public void checkForDanglingFateLocks() {
-    FunctionalTestUtils.assertNoDanglingFateLocks((ClientContext) accumuloClient, getCluster());
-    accumuloClient.close();
+    if (getClusterType() == ClusterType.MINI) {
+      FunctionalTestUtils.assertNoDanglingFateLocks((ClientContext) accumuloClient, getCluster());
+      accumuloClient.close();
+    }
   }
 
   @Test
diff --git a/test/src/main/java/org/apache/accumulo/test/UserCompactionStrategyIT.java b/test/src/main/java/org/apache/accumulo/test/UserCompactionStrategyIT.java
index d7c2930..af6ab21 100644
--- a/test/src/main/java/org/apache/accumulo/test/UserCompactionStrategyIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/UserCompactionStrategyIT.java
@@ -66,15 +66,22 @@ import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 public class UserCompactionStrategyIT extends AccumuloClusterHarness {
 
   @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
+  @Override
   public int defaultTimeoutSeconds() {
     return 3 * 60;
   }
 
   @After
   public void checkForDanglingFateLocks() {
-    try (AccumuloClient c = Accumulo.newClient().from(getClientProps()).build()) {
-      assertNotNull(c);
-      FunctionalTestUtils.assertNoDanglingFateLocks((ClientContext) c, getCluster());
+    if (getClusterType() == ClusterType.MINI) {
+      try (AccumuloClient c = Accumulo.newClient().from(getClientProps()).build()) {
+        assertNotNull(c);
+        FunctionalTestUtils.assertNoDanglingFateLocks((ClientContext) c, getCluster());
+      }
     }
   }
 
diff --git a/test/src/main/java/org/apache/accumulo/test/functional/CompactionIT.java b/test/src/main/java/org/apache/accumulo/test/functional/CompactionIT.java
index 4d9e4dc..5da58e6 100644
--- a/test/src/main/java/org/apache/accumulo/test/functional/CompactionIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/functional/CompactionIT.java
@@ -21,7 +21,6 @@ package org.apache.accumulo.test.functional;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import java.util.Map;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
@@ -30,14 +29,12 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import org.apache.accumulo.core.client.Accumulo;
 import org.apache.accumulo.core.client.AccumuloClient;
 import org.apache.accumulo.core.client.Scanner;
-import org.apache.accumulo.core.client.admin.InstanceOperations;
 import org.apache.accumulo.core.conf.Property;
 import org.apache.accumulo.core.metadata.MetadataTable;
 import org.apache.accumulo.core.metadata.schema.MetadataSchema.TabletsSection.DataFileColumnFamily;
 import org.apache.accumulo.core.metadata.schema.MetadataSchema.TabletsSection.TabletColumnFamily;
 import org.apache.accumulo.core.security.Authorizations;
 import org.apache.accumulo.harness.AccumuloClusterHarness;
-import org.apache.accumulo.minicluster.ServerType;
 import org.apache.accumulo.miniclusterImpl.MiniAccumuloConfigImpl;
 import org.apache.accumulo.test.VerifyIngest;
 import org.apache.accumulo.test.VerifyIngest.VerifyParams;
@@ -46,8 +43,6 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.RawLocalFileSystem;
 import org.apache.hadoop.io.Text;
-import org.junit.After;
-import org.junit.Before;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -59,6 +54,11 @@ public class CompactionIT extends AccumuloClusterHarness {
   private static final Logger log = LoggerFactory.getLogger(CompactionIT.class);
 
   @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
+  @Override
   public void configureMiniCluster(MiniAccumuloConfigImpl cfg, Configuration hadoopCoreSite) {
     cfg.setProperty(Property.INSTANCE_ZK_TIMEOUT, "15s");
     cfg.setProperty(Property.TSERV_MAJC_THREAD_MAXOPEN, "4");
@@ -73,45 +73,6 @@ public class CompactionIT extends AccumuloClusterHarness {
     return 4 * 60;
   }
 
-  private String majcThreadMaxOpen, majcDelay, majcMaxConcurrent;
-
-  @Before
-  public void alterConfig() throws Exception {
-    if (getClusterType() == ClusterType.STANDALONE) {
-      try (AccumuloClient client = Accumulo.newClient().from(getClientProps()).build()) {
-        InstanceOperations iops = client.instanceOperations();
-        Map<String,String> config = iops.getSystemConfiguration();
-        majcThreadMaxOpen = config.get(Property.TSERV_MAJC_THREAD_MAXOPEN.getKey());
-        majcDelay = config.get(Property.TSERV_MAJC_DELAY.getKey());
-        majcMaxConcurrent = config.get(Property.TSERV_MAJC_MAXCONCURRENT.getKey());
-
-        iops.setProperty(Property.TSERV_MAJC_THREAD_MAXOPEN.getKey(), "4");
-        iops.setProperty(Property.TSERV_MAJC_DELAY.getKey(), "1");
-        iops.setProperty(Property.TSERV_MAJC_MAXCONCURRENT.getKey(), "1");
-
-        getClusterControl().stopAllServers(ServerType.TABLET_SERVER);
-        getClusterControl().startAllServers(ServerType.TABLET_SERVER);
-      }
-    }
-  }
-
-  @After
-  public void resetConfig() throws Exception {
-    // We set the values..
-    if (majcThreadMaxOpen != null) {
-      try (AccumuloClient client = Accumulo.newClient().from(getClientProps()).build()) {
-        InstanceOperations iops = client.instanceOperations();
-
-        iops.setProperty(Property.TSERV_MAJC_THREAD_MAXOPEN.getKey(), majcThreadMaxOpen);
-        iops.setProperty(Property.TSERV_MAJC_DELAY.getKey(), majcDelay);
-        iops.setProperty(Property.TSERV_MAJC_MAXCONCURRENT.getKey(), majcMaxConcurrent);
-
-        getClusterControl().stopAllServers(ServerType.TABLET_SERVER);
-        getClusterControl().startAllServers(ServerType.TABLET_SERVER);
-      }
-    }
-  }
-
   @Test
   public void test() throws Exception {
     try (AccumuloClient c = Accumulo.newClient().from(getClientProps()).build()) {
diff --git a/test/src/main/java/org/apache/accumulo/test/functional/MasterMetricsIT.java b/test/src/main/java/org/apache/accumulo/test/functional/MasterMetricsIT.java
index e070dca..e5504a4 100644
--- a/test/src/main/java/org/apache/accumulo/test/functional/MasterMetricsIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/functional/MasterMetricsIT.java
@@ -52,6 +52,11 @@ import org.slf4j.LoggerFactory;
  */
 public class MasterMetricsIT extends AccumuloClusterHarness {
 
+  @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
   private static final Logger log = LoggerFactory.getLogger(MasterMetricsIT.class);
 
   private AccumuloClient accumuloClient;
@@ -87,7 +92,8 @@ public class MasterMetricsIT extends AccumuloClusterHarness {
 
   @After
   public void cleanup() {
-    metricsTail.close();
+    if (metricsTail != null)
+      metricsTail.close();
   }
 
   @Override
diff --git a/test/src/main/java/org/apache/accumulo/test/functional/SummaryIT.java b/test/src/main/java/org/apache/accumulo/test/functional/SummaryIT.java
index ed77986..5ee1863 100644
--- a/test/src/main/java/org/apache/accumulo/test/functional/SummaryIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/functional/SummaryIT.java
@@ -93,6 +93,11 @@ import com.google.common.collect.Lists;
 
 public class SummaryIT extends AccumuloClusterHarness {
 
+  @Override
+  public boolean canRunTest(ClusterType type) {
+    return type == ClusterType.MINI;
+  }
+
   private LongSummaryStatistics getTimestampStats(final String table, AccumuloClient c)
       throws TableNotFoundException {
     try (Scanner scanner = c.createScanner(table, Authorizations.EMPTY)) {