accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bus...@apache.org
Subject [1/3] git commit: ACCUMULO-2666 Set a scalable default timeout for integration tests based on the functional test's MAC.
Date Tue, 15 Apr 2014 16:26:32 GMT
Repository: accumulo
Updated Branches:
  refs/heads/1.6.0-SNAPSHOT e4cef7f20 -> 344fe21e0
  refs/heads/master cffb86de6 -> 8520328d4


ACCUMULO-2666  Set a scalable default timeout for integration tests based on the functional test's MAC.


Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/344fe21e
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/344fe21e
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/344fe21e

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 344fe21e026ed418c1b43765741900ff14e2b633
Parents: e4cef7f
Author: Sean Busbey <busbey@cloudera.com>
Authored: Mon Apr 14 13:54:57 2014 -0500
Committer: Sean Busbey <busbey@cloudera.com>
Committed: Tue Apr 15 10:50:36 2014 -0500

----------------------------------------------------------------------
 test/pom.xml                                    | 12 +++++++
 .../accumulo/test/functional/AbstractMacIT.java | 36 ++++++++++++++++++++
 .../accumulo/test/functional/AddSplitIT.java    |  7 +++-
 .../test/functional/BackupMasterIT.java         |  7 +++-
 .../test/functional/BadIteratorMincIT.java      |  7 +++-
 .../functional/BalanceAfterCommsFailureIT.java  |  7 +++-
 .../test/functional/BatchScanSplitIT.java       |  7 +++-
 .../test/functional/BatchWriterFlushIT.java     |  7 +++-
 .../test/functional/BigRootTabletIT.java        |  7 +++-
 .../accumulo/test/functional/BinaryIT.java      |  9 +++--
 .../test/functional/BinaryStressIT.java         |  7 +++-
 .../accumulo/test/functional/BloomFilterIT.java |  7 +++-
 .../accumulo/test/functional/BulkFileIT.java    |  7 +++-
 .../apache/accumulo/test/functional/BulkIT.java |  7 +++-
 .../functional/BulkSplitOptimizationIT.java     |  7 +++-
 .../test/functional/ChaoticBalancerIT.java      |  7 +++-
 .../accumulo/test/functional/ClassLoaderIT.java |  7 +++-
 .../accumulo/test/functional/CleanTmpIT.java    |  7 +++-
 .../accumulo/test/functional/CleanUpIT.java     |  8 ++++-
 .../accumulo/test/functional/CloneTestIT.java   |  9 +++--
 .../accumulo/test/functional/CombinerIT.java    |  7 +++-
 .../accumulo/test/functional/CompactionIT.java  |  7 +++-
 .../accumulo/test/functional/ConcurrencyIT.java |  7 +++-
 .../accumulo/test/functional/ConstraintIT.java  |  7 +++-
 .../test/functional/CreateAndUseIT.java         |  7 +++-
 .../test/functional/CreateManyScannersIT.java   |  7 +++-
 .../test/functional/DeleteEverythingIT.java     |  7 +++-
 .../accumulo/test/functional/DeleteIT.java      |  7 +++-
 .../accumulo/test/functional/DeleteRowsIT.java  |  8 ++++-
 .../test/functional/DeleteRowsSplitIT.java      |  7 +++-
 .../functional/DeleteTableDuringSplitIT.java    |  7 +++-
 .../test/functional/DynamicThreadPoolsIT.java   |  7 +++-
 .../test/functional/FateStarvationIT.java       |  7 +++-
 .../test/functional/HalfDeadTServerIT.java      |  9 +++--
 .../accumulo/test/functional/LargeRowIT.java    |  7 +++-
 .../test/functional/LateLastContactIT.java      |  7 +++-
 .../accumulo/test/functional/LogicalTimeIT.java |  7 +++-
 .../accumulo/test/functional/MapReduceIT.java   |  8 ++++-
 .../test/functional/MasterAssignmentIT.java     |  7 +++-
 .../test/functional/MasterFailoverIT.java       |  7 +++-
 .../accumulo/test/functional/MaxOpenIT.java     |  7 +++-
 .../test/functional/MetadataMaxFiles.java       |  7 +++-
 .../test/functional/MetadataSplitIT.java        |  9 +++--
 .../accumulo/test/functional/ReadWriteIT.java   | 19 +++++++----
 .../accumulo/test/functional/RenameIT.java      |  7 +++-
 .../test/functional/RestartStressIT.java        |  7 +++-
 .../accumulo/test/functional/RowDeleteIT.java   |  8 +++--
 .../test/functional/ScanIteratorIT.java         |  7 +++-
 .../accumulo/test/functional/ScanRangeIT.java   |  7 +++-
 .../test/functional/ScanSessionTimeOutIT.java   |  7 +++-
 .../accumulo/test/functional/ScannerIT.java     |  7 +++-
 .../test/functional/ServerSideErrorIT.java      |  7 +++-
 .../accumulo/test/functional/ShutdownIT.java    | 13 ++++---
 .../functional/SimpleBalancerFairnessIT.java    |  7 +++-
 .../test/functional/SparseColumnFamilyIT.java   |  7 +++-
 .../accumulo/test/functional/SplitIT.java       | 11 ++++--
 .../test/functional/SplitRecoveryIT.java        |  6 +++-
 .../accumulo/test/functional/StartIT.java       |  7 +++-
 .../accumulo/test/functional/TableIT.java       |  7 +++-
 .../accumulo/test/functional/TabletIT.java      |  7 +++-
 .../accumulo/test/functional/TimeoutIT.java     |  7 +++-
 .../accumulo/test/functional/VisibilityIT.java  |  7 +++-
 .../test/functional/WriteAheadLogIT.java        |  7 +++-
 .../accumulo/test/functional/WriteLotsIT.java   |  7 +++-
 .../accumulo/test/functional/ZooCacheIT.java    |  7 +++-
 .../test/functional/ZookeeperRestartIT.java     |  7 +++-
 66 files changed, 449 insertions(+), 80 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/pom.xml
----------------------------------------------------------------------
diff --git a/test/pom.xml b/test/pom.xml
index 4ec6f6a..6ebce1a 100644
--- a/test/pom.xml
+++ b/test/pom.xml
@@ -25,6 +25,9 @@
   <artifactId>accumulo-test</artifactId>
   <name>Testing</name>
   <description>Tests for Apache Accumulo.</description>
+  <properties>
+    <timeout.factor>1</timeout.factor>
+  </properties>
   <dependencies>
     <dependency>
       <groupId>com.beust</groupId>
@@ -187,6 +190,15 @@
             </excludes>
           </configuration>
         </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-failsafe-plugin</artifactId>
+        <configuration>
+          <systemPropertyVariables>
+            <timeout.factor>${timeout.factor}</timeout.factor>
+          </systemPropertyVariables>
+        </configuration>
+      </plugin>
       </plugins>
     </pluginManagement>
   </build>

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/AbstractMacIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/AbstractMacIT.java b/test/src/test/java/org/apache/accumulo/test/functional/AbstractMacIT.java
index 352470c..0c29dfd 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/AbstractMacIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/AbstractMacIT.java
@@ -33,6 +33,7 @@ import org.apache.commons.io.FileUtils;
 import org.apache.log4j.Logger;
 import org.junit.Rule;
 import org.junit.rules.TestName;
+import org.junit.rules.Timeout;
 
 public abstract class AbstractMacIT {
   public static final Logger log = Logger.getLogger(AbstractMacIT.class);
@@ -112,6 +113,41 @@ public abstract class AbstractMacIT {
     cfg.setSiteConfig(siteConfig);
   }
 
+  /**
+   * If a given IT test has a method that takes longer than a class-set default timeout, declare it failed.
+   *
+   * Note that this provides a upper bound on test times, even in the presence of Test annotations with
+   * a timeout. That is, the Test annotatation can make the timing tighter but will not be able to allow
+   * a timeout that takes longer.
+   *
+   * Defaults to no timeout and can be changed via two mechanisms
+   *
+   * 1) A given IT class can override the defaultTimeoutSeconds method if test methods in that class should
+   *    have a timeout.
+   * 2) The system property "timeout.factor" is used as a multiplier for the class provided default
+   *
+   * Note that if either of these values is '0' tests will run with no timeout. The default class level
+   * timeout is set to 0.
+   *
+   */
+  @Rule
+  public Timeout testsShouldTimeout() {
+    int waitLonger = 0;
+    try {
+      waitLonger = Integer.parseInt(System.getProperty("timeout.factor"));
+    } catch (NumberFormatException exception) {
+      log.warn("Could not parse timeout.factor, defaulting to no timeout.");
+    }
+    return new Timeout(waitLonger * defaultTimeoutSeconds() * 1000);
+  }
+
+  /**
+   * time to wait per-method before declaring a timeout, in seconds.
+   */
+  protected int defaultTimeoutSeconds() {
+    return 0;
+  }
+
   public abstract Connector getConnector() throws AccumuloException, AccumuloSecurityException;
 
   public abstract String rootPath();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/AddSplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/AddSplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/AddSplitIT.java
index cc2285e..f657034 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/AddSplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/AddSplitIT.java
@@ -39,7 +39,12 @@ import org.junit.Test;
 
 public class AddSplitIT extends SimpleMacIT {
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void addSplitTest() throws Exception {
 
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BackupMasterIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BackupMasterIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BackupMasterIT.java
index 7c1f8a2..f669704 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BackupMasterIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BackupMasterIT.java
@@ -27,7 +27,12 @@ import org.junit.Test;
 
 public class BackupMasterIT extends ConfigurableMacIT {
 
-  @Test(timeout= 10 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 10;
+  }
+
+  @Test
   public void test() throws Exception {
     // wait for master
     UtilWaitThread.sleep(1000);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BadIteratorMincIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BadIteratorMincIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BadIteratorMincIT.java
index a25e775..0139a10 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BadIteratorMincIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BadIteratorMincIT.java
@@ -38,7 +38,12 @@ import org.junit.Test;
 
 public class BadIteratorMincIT extends SimpleMacIT {
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BalanceAfterCommsFailureIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BalanceAfterCommsFailureIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BalanceAfterCommsFailureIT.java
index a16ec2f..5e3966e 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BalanceAfterCommsFailureIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BalanceAfterCommsFailureIT.java
@@ -48,7 +48,12 @@ public class BalanceAfterCommsFailureIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.GENERAL_RPC_TIMEOUT.getKey(), "2s"));
   }
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = this.getConnector();
     c.tableOperations().create("test");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BatchScanSplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BatchScanSplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BatchScanSplitIT.java
index 22f0d98..c67407d 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BatchScanSplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BatchScanSplitIT.java
@@ -47,7 +47,12 @@ public class BatchScanSplitIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "0"));
   }
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BatchWriterFlushIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BatchWriterFlushIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BatchWriterFlushIT.java
index 34fb402..e2dd903 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BatchWriterFlushIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BatchWriterFlushIT.java
@@ -43,7 +43,12 @@ public class BatchWriterFlushIT extends SimpleMacIT {
 
   private static final int NUM_TO_FLUSH = 100000;
 
-  @Test(timeout = 90 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 90;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     String[] tableNames = getUniqueNames(2);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BigRootTabletIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BigRootTabletIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BigRootTabletIT.java
index 0e0671b..b021c3a 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BigRootTabletIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BigRootTabletIT.java
@@ -41,7 +41,12 @@ public class BigRootTabletIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().addSplits(MetadataTable.NAME, FunctionalTestUtils.splits("0 1 2 3 4 5 6 7 8 9 a".split(" ")));

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BinaryIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BinaryIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BinaryIT.java
index d5a4ffd..e6c73c2 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BinaryIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BinaryIT.java
@@ -28,14 +28,19 @@ import org.junit.Test;
 
 public class BinaryIT extends ConfigurableMacIT {
 
-  @Test(timeout = 90 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 90;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("bt");
     runTest(c);
   }
 
-  @Test(timeout = 90 * 1000)
+  @Test
   public void testPreSplit() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("bt");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BinaryStressIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BinaryStressIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BinaryStressIT.java
index 7338095..a60c2d5 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BinaryStressIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BinaryStressIT.java
@@ -34,6 +34,11 @@ import org.junit.Test;
 public class BinaryStressIT extends ConfigurableMacIT {
   
   @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Override
   public void configure(MiniAccumuloConfigImpl cfg, Configuration hadoopCoreSite) {
     Map<String,String> siteConfig = new HashMap<String,String>();
     siteConfig.put(Property.TSERV_MAXMEM.getKey(), "50K");
@@ -41,7 +46,7 @@ public class BinaryStressIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig );
   }
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void binaryStressTest() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("bt");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BloomFilterIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BloomFilterIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BloomFilterIT.java
index 9ba713d..8f6b830 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BloomFilterIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BloomFilterIT.java
@@ -62,7 +62,12 @@ public class BloomFilterIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig );
   }
   
-  @Test(timeout = 6 * 60 *1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 6 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     for (String table : "bt1 bt2 bt3 bt4".split(" ")) {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BulkFileIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BulkFileIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BulkFileIT.java
index 10fb7f4..7974c6c 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BulkFileIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BulkFileIT.java
@@ -42,7 +42,12 @@ import org.junit.Test;
 
 public class BulkFileIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void testBulkFile() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
index faa9391..831dcd4 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
@@ -37,7 +37,12 @@ public class BulkIT extends SimpleMacIT {
   static final int N = 100000;
   static final int COUNT = 5;
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     runTest(getConnector(), getUniqueNames(1)[0], this.getClass().getName(), testName.getMethodName());
   }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java b/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
index f9abc0d..6714ff8 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
@@ -51,10 +51,15 @@ public class BulkSplitOptimizationIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "1s"));
   }
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
   static final int ROWS = 100000;
   static final int SPLITS = 99;
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void testBulkSplitOptimization() throws Exception {
     final Connector c = getConnector();
     c.tableOperations().create(TABLE_NAME);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ChaoticBalancerIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ChaoticBalancerIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ChaoticBalancerIT.java
index 67a2d8c..8afb3d2 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ChaoticBalancerIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ChaoticBalancerIT.java
@@ -42,7 +42,12 @@ public class ChaoticBalancerIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig );
   }
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ClassLoaderIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ClassLoaderIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ClassLoaderIT.java
index adc49d9..d71819e 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ClassLoaderIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ClassLoaderIT.java
@@ -44,7 +44,12 @@ import org.junit.Test;
 
 public class ClassLoaderIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CleanTmpIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CleanTmpIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CleanTmpIT.java
index 3ad9a3c..676f6d7 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CleanTmpIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CleanTmpIT.java
@@ -47,7 +47,12 @@ public class CleanTmpIT extends ConfigurableMacIT {
     cfg.useMiniDFS(true);
   }
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     // make a table

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CleanUpIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CleanUpIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CleanUpIT.java
index 2c878e3..79bbb90 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CleanUpIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CleanUpIT.java
@@ -34,7 +34,13 @@ import org.junit.Test;
  * 
  */
 public class CleanUpIT extends SimpleMacIT {
-  @Test(timeout = 30 * 1000)
+
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 30;
+  }
+
+  @Test
   public void run() throws Exception {
 
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CloneTestIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CloneTestIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CloneTestIT.java
index 29f838b..fc69831 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CloneTestIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CloneTestIT.java
@@ -51,7 +51,12 @@ import org.junit.Test;
  */
 public class CloneTestIT extends SimpleMacIT {
 
-  @Test(timeout = 120 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void testProps() throws Exception {
     String[] tableNames = getUniqueNames(2);
     String table1 = tableNames[0];
@@ -132,7 +137,7 @@ public class CloneTestIT extends SimpleMacIT {
     return bw;
   }
 
-  @Test(timeout = 120 * 1000)
+  @Test
   public void testDeleteClone() throws Exception {
     String[] tableNames = getUniqueNames(3);
     String table1 = tableNames[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CombinerIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CombinerIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CombinerIT.java
index be1a709..69f9134 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CombinerIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CombinerIT.java
@@ -39,6 +39,11 @@ import org.junit.Test;
 
 public class CombinerIT extends SimpleMacIT {
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
   private void checkSum(String tableName, Connector c) throws Exception {
     Scanner s = c.createScanner(tableName, Authorizations.EMPTY);
     Iterator<Entry<Key,Value>> i = s.iterator();
@@ -48,7 +53,7 @@ public class CombinerIT extends SimpleMacIT {
     assertFalse(i.hasNext());
   }
 
-  @Test(timeout = 60 * 1000)
+  @Test
   public void aggregationTest() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CompactionIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CompactionIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CompactionIT.java
index e7ccdd2..b659913 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CompactionIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CompactionIT.java
@@ -58,7 +58,12 @@ public class CompactionIT extends ConfigurableMacIT {
     cfg.setSiteConfig(map);
   }
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     final Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ConcurrencyIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ConcurrencyIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ConcurrencyIT.java
index b2d16ad..785a997 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ConcurrencyIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ConcurrencyIT.java
@@ -67,13 +67,18 @@ public class ConcurrencyIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "1"));
   }
   
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
   /*
    * Below is a diagram of the operations in this test over time.
    * 
    * Scan 0 |------------------------------| Scan 1 |----------| Minc 1 |-----| Scan 2 |----------| Scan 3 |---------------| Minc 2 |-----| Majc 1 |-----|
    */
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     runTest(c);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ConstraintIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ConstraintIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ConstraintIT.java
index ef2212d..d5e9188 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ConstraintIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ConstraintIT.java
@@ -42,7 +42,12 @@ import org.junit.Test;
 
 public class ConstraintIT extends SimpleMacIT {
 
-  @Test(timeout = 30 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 30;
+  }
+
+  @Test
   public void run() throws Exception {
     String[] tableNames = getUniqueNames(3);
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CreateAndUseIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CreateAndUseIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CreateAndUseIT.java
index 3dbf5ce..45c4a31 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CreateAndUseIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CreateAndUseIT.java
@@ -36,7 +36,12 @@ import org.junit.Test;
 
 public class CreateAndUseIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void run() throws Exception {
     SortedSet<Text> splits = new TreeSet<Text>();
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/CreateManyScannersIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/CreateManyScannersIT.java b/test/src/test/java/org/apache/accumulo/test/functional/CreateManyScannersIT.java
index e627218..aed38e8 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/CreateManyScannersIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/CreateManyScannersIT.java
@@ -22,7 +22,12 @@ import org.junit.Test;
 
 public class CreateManyScannersIT extends SimpleMacIT {
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DeleteEverythingIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DeleteEverythingIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DeleteEverythingIT.java
index e251157..83b5b24 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteEverythingIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteEverythingIT.java
@@ -45,7 +45,12 @@ public class DeleteEverythingIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "1s"));
   }
   
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("de");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
index fe51039..3510fbd 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
@@ -29,7 +29,12 @@ import org.junit.Test;
 
 public class DeleteIT extends ConfigurableMacIT {
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsIT.java
index 0731e44..4b7d664 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsIT.java
@@ -39,6 +39,12 @@ import org.apache.log4j.Logger;
 import org.junit.Test;
 
 public class DeleteRowsIT extends SimpleMacIT {
+
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 10 * 60;
+  }
+
   private static final Logger log = Logger.getLogger(DeleteRowsIT.class);
 
   private static final int ROWS_PER_TABLET = 10;
@@ -57,7 +63,7 @@ public class DeleteRowsIT extends SimpleMacIT {
     ROWS.add("{");
   }
 
-  @Test(timeout = 10 * 60 * 1000)
+  @Test
   public void test() throws Exception {
     // Delete ranges of rows, and verify the tablets are removed.
     int i = 0;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsSplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsSplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsSplitIT.java
index 0a0b0b9..a8237a6 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsSplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteRowsSplitIT.java
@@ -41,6 +41,11 @@ import org.junit.Test;
 // attempt to reproduce ACCUMULO-315
 public class DeleteRowsSplitIT extends SimpleMacIT {
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
   private static final Logger log = Logger.getLogger(DeleteRowsSplitIT.class);
 
   private static final String LETTERS = "abcdefghijklmnopqrstuvwxyz";
@@ -53,7 +58,7 @@ public class DeleteRowsSplitIT extends SimpleMacIT {
     }
   }
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void run() throws Exception {
     // Delete ranges of rows, and verify the are removed
     // Do this while adding many splits

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DeleteTableDuringSplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DeleteTableDuringSplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DeleteTableDuringSplitIT.java
index cd69be7..4bbdfef 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteTableDuringSplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteTableDuringSplitIT.java
@@ -33,7 +33,12 @@ import org.junit.Test;
 // ACCUMULO-2361
 public class DeleteTableDuringSplitIT extends SimpleMacIT {
   
-  @Test(timeout= 10 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 10 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     String[] tableNames = getUniqueNames(100);
     // make a bunch of tables

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/DynamicThreadPoolsIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/DynamicThreadPoolsIT.java b/test/src/test/java/org/apache/accumulo/test/functional/DynamicThreadPoolsIT.java
index c89b8ce..87497b9 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/DynamicThreadPoolsIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DynamicThreadPoolsIT.java
@@ -44,7 +44,12 @@ public class DynamicThreadPoolsIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "100ms"));
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     final int TABLES = 15;
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/FateStarvationIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/FateStarvationIT.java b/test/src/test/java/org/apache/accumulo/test/functional/FateStarvationIT.java
index 6ac2ef9..4d75a16 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/FateStarvationIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/FateStarvationIT.java
@@ -31,7 +31,12 @@ import org.junit.Test;
  */
 public class FateStarvationIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void run() throws Exception {
     String tableName = getUniqueNames(1)[0];
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
index 0346f2f..d235545 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
@@ -53,6 +53,11 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
     cfg.useMiniDFS(true);
   }
   
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
   class DumpOutput extends Daemon {
     
     private final BufferedReader rdr;
@@ -85,12 +90,12 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
     }
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void testRecover() throws Exception {
     test(10);
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void testTimeout() throws Exception {
     String results = test(40);
     if (results != null) {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/LargeRowIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/LargeRowIT.java b/test/src/test/java/org/apache/accumulo/test/functional/LargeRowIT.java
index 31783c4..cf85ea9 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/LargeRowIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/LargeRowIT.java
@@ -50,6 +50,11 @@ public class LargeRowIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "10ms"));
   }
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
   private static final int SEED = 42;
   private static final String REG_TABLE_NAME = "lr";
   private static final String PRE_SPLIT_TABLE_NAME = "lrps";
@@ -58,7 +63,7 @@ public class LargeRowIT extends ConfigurableMacIT {
   private static final int NUM_PRE_SPLITS = 9;
   private static final int SPLIT_THRESH = ROW_SIZE * NUM_ROWS / NUM_PRE_SPLITS;
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void run() throws Exception {
     Random r = new Random();
     byte rowData[] = new byte[ROW_SIZE];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/LateLastContactIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/LateLastContactIT.java b/test/src/test/java/org/apache/accumulo/test/functional/LateLastContactIT.java
index fc2ed52..abc8182 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/LateLastContactIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/LateLastContactIT.java
@@ -36,7 +36,12 @@ public class LateLastContactIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.GENERAL_RPC_TIMEOUT.getKey(), "2s"));
   }
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Process zombie = cluster.exec(ZombieTServer.class);
     assertEquals(0, zombie.waitFor());

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/LogicalTimeIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/LogicalTimeIT.java b/test/src/test/java/org/apache/accumulo/test/functional/LogicalTimeIT.java
index add7d8a..f66eb22 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/LogicalTimeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/LogicalTimeIT.java
@@ -31,7 +31,12 @@ import org.junit.Test;
 
 public class LogicalTimeIT extends ConfigurableMacIT {
 
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void run() throws Exception {
     int tc = 0;
     String tableName = "foo";

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MapReduceIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MapReduceIT.java b/test/src/test/java/org/apache/accumulo/test/functional/MapReduceIT.java
index ee5831b..1946205 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MapReduceIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MapReduceIT.java
@@ -44,6 +44,12 @@ import org.codehaus.plexus.util.Base64;
 import org.junit.Test;
 
 public class MapReduceIT extends ConfigurableMacIT {
+
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
   public static final String hadoopTmpDirArg = "-Dhadoop.tmp.dir=" + System.getProperty("user.dir") + "/target/hadoop-tmp";
 
   static final String tablename = "mapredf";
@@ -53,7 +59,7 @@ public class MapReduceIT extends ConfigurableMacIT {
   static final String output_cq = "cq-MD4BASE64";
   static final String output_cfcq = input_cf + ":" + output_cq;
 
-  @Test(timeout = 60 * 1000)
+  @Test
   public void test() throws Exception {
     runTest(getConnector(), getCluster());
   }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MasterAssignmentIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MasterAssignmentIT.java b/test/src/test/java/org/apache/accumulo/test/functional/MasterAssignmentIT.java
index 354a97d..298466d 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MasterAssignmentIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MasterAssignmentIT.java
@@ -36,7 +36,12 @@ import org.junit.Test;
 
 public class MasterAssignmentIT extends SimpleMacIT {
   
-  @Test(timeout=2*60*1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     String tableName = super.getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MasterFailoverIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MasterFailoverIT.java b/test/src/test/java/org/apache/accumulo/test/functional/MasterFailoverIT.java
index 8fd1499..218d65e 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MasterFailoverIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MasterFailoverIT.java
@@ -36,7 +36,12 @@ public class MasterFailoverIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.INSTANCE_ZK_TIMEOUT.getKey(), "5s"));
   }
 
-  @Test(timeout = 90 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 90;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MaxOpenIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MaxOpenIT.java b/test/src/test/java/org/apache/accumulo/test/functional/MaxOpenIT.java
index 72ad0f7..2649890 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MaxOpenIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MaxOpenIT.java
@@ -51,10 +51,15 @@ public class MaxOpenIT extends ConfigurableMacIT {
     cfg.setSiteConfig(conf);
   }
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 3 * 60;
+  }
+
   private static final int NUM_TABLETS = 16;
   private static final int NUM_TO_INGEST = 10000;
   
-  @Test(timeout = 3 * 60 * 1000)
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MetadataMaxFiles.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MetadataMaxFiles.java b/test/src/test/java/org/apache/accumulo/test/functional/MetadataMaxFiles.java
index b83a7de..6b8d9b3 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MetadataMaxFiles.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MetadataMaxFiles.java
@@ -53,7 +53,12 @@ public class MetadataMaxFiles extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
   
-  @Test(timeout = 240 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     SortedSet<Text> splits = new TreeSet<Text>();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/MetadataSplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/MetadataSplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/MetadataSplitIT.java
index 3339698..e0c8d0e 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/MetadataSplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/MetadataSplitIT.java
@@ -36,7 +36,12 @@ public class MetadataSplitIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "100ms"));
   }
  
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     assertEquals(1, c.tableOperations().listSplits(MetadataTable.NAME).size());
@@ -48,4 +53,4 @@ public class MetadataSplitIT extends ConfigurableMacIT {
     UtilWaitThread.sleep(10*1000);
     assertTrue(c.tableOperations().listSplits(MetadataTable.NAME).size() > 2);
   }
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
index e845d99..cb803f8 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
@@ -58,8 +58,13 @@ public class ReadWriteIT extends ConfigurableMacIT {
   static final int ROWS = 200000;
   static final int COLS = 1;
   static final String COLF = "colf";
-  
-  @Test(timeout = 2 * 60 * 1000)
+
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void sunnyDay() throws Exception {
     // Start accumulo, create a table, insert some data, verify we can read it out.
     // Shutdown cleanly.
@@ -114,7 +119,7 @@ public class ReadWriteIT extends ConfigurableMacIT {
     return args;
   }
   
-  @Test(timeout = 60 * 1000)
+  @Test
   public void multiTableTest() throws Exception {
     // Write to multiple tables
     String instance = cluster.getInstanceName();
@@ -123,7 +128,7 @@ public class ReadWriteIT extends ConfigurableMacIT {
     exec(TestMultiTableIngest.class, args("--count", "" + ROWS, "--readonly", "-u", "root", "-i", instance, "-z", keepers, "-p", ROOT_PASSWORD));
   }
   
-  @Test(timeout = 60 * 1000)
+  @Test
   public void largeTest() throws Exception {
     // write a few large values
     Connector connector = getConnector();
@@ -131,7 +136,7 @@ public class ReadWriteIT extends ConfigurableMacIT {
     verify(connector, 2, 1, 500000, 0);
   }
   
-  @Test(timeout = 60 * 1000)
+  @Test
   public void interleaved() throws Exception {
     // read and write concurrently
     final Connector connector = getConnector();
@@ -172,7 +177,7 @@ public class ReadWriteIT extends ConfigurableMacIT {
     return m;
   }
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void localityGroupPerf() throws Exception {
     // verify that locality groups can make look-ups faster
     final Connector connector = getConnector();
@@ -198,7 +203,7 @@ public class ReadWriteIT extends ConfigurableMacIT {
     assertTrue(diff2 < diff);
   }
   
-  @Test(timeout = 60 * 1000)
+  @Test
   public void sunnyLG() throws Exception {
     // create a locality group, write to it and ensure it exists in the RFiles that result
     final Connector connector = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/RenameIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/RenameIT.java b/test/src/test/java/org/apache/accumulo/test/functional/RenameIT.java
index 135b4e0..8cbe84f 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/RenameIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/RenameIT.java
@@ -25,7 +25,12 @@ import org.junit.Test;
 
 public class RenameIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void renameTest() throws Exception {
     String[] tableNames = getUniqueNames(2);
     String name1 = tableNames[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java b/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
index 06cdb8c..d8c2804 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
@@ -46,6 +46,11 @@ public class RestartStressIT extends ConfigurableMacIT {
     cfg.useMiniDFS(true);
   }
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 10 * 60;
+  }
+
   private static final TestIngest.Opts IOPTS;
   private static final VerifyIngest.Opts VOPTS;
   static {
@@ -56,7 +61,7 @@ public class RestartStressIT extends ConfigurableMacIT {
   private static final ScannerOpts SOPTS = new ScannerOpts();
   
   
-  @Test(timeout = 10 * 60 * 1000)
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/RowDeleteIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/RowDeleteIT.java b/test/src/test/java/org/apache/accumulo/test/functional/RowDeleteIT.java
index 886af49..4dbd912 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/RowDeleteIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/RowDeleteIT.java
@@ -42,13 +42,17 @@ import org.junit.Test;
 
 public class RowDeleteIT extends ConfigurableMacIT {
 
-  
   @Override
   public void configure(MiniAccumuloConfigImpl cfg, Configuration hadoopCoreSite) {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_MAJC_DELAY.getKey(), "50ms"));
   }
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("rdel1");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ScanIteratorIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ScanIteratorIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ScanIteratorIT.java
index c62592b..7e43812 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ScanIteratorIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ScanIteratorIT.java
@@ -39,7 +39,12 @@ import org.junit.Test;
 
 public class ScanIteratorIT extends SimpleMacIT {
 
-  @Test(timeout = 30 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 30;
+  }
+
+  @Test
   public void run() throws Exception {
     String tableName = getUniqueNames(1)[0];
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ScanRangeIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ScanRangeIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ScanRangeIT.java
index 818cf92..ba03d00 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ScanRangeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ScanRangeIT.java
@@ -34,12 +34,17 @@ import org.junit.Test;
 
 public class ScanRangeIT extends SimpleMacIT {
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
   private static final int TS_LIMIT = 1;
   private static final int CQ_LIMIT = 5;
   private static final int CF_LIMIT = 5;
   private static final int ROW_LIMIT = 100;
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     String[] tableNames = getUniqueNames(2);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ScanSessionTimeOutIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ScanSessionTimeOutIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ScanSessionTimeOutIT.java
index 693a67d..ed2f0ba 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ScanSessionTimeOutIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ScanSessionTimeOutIT.java
@@ -43,7 +43,12 @@ public class ScanSessionTimeOutIT extends ConfigurableMacIT {
     cfg.setSiteConfig(Collections.singletonMap(Property.TSERV_SESSION_MAXIDLE.getKey(), "3"));
   }
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("abc");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ScannerIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ScannerIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ScannerIT.java
index 3fca421..fdf63d8 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ScannerIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ScannerIT.java
@@ -41,7 +41,12 @@ import com.google.common.base.Stopwatch;
  */
 public class ScannerIT extends SimpleMacIT {
 
-  @Test(timeout = 60000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void testScannerReadaheadConfiguration() throws Exception {
     final String table = "table";
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ServerSideErrorIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ServerSideErrorIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ServerSideErrorIT.java
index e68514d..d765b16 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ServerSideErrorIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ServerSideErrorIT.java
@@ -38,7 +38,12 @@ import org.junit.Test;
 
 public class ServerSideErrorIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ShutdownIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ShutdownIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ShutdownIT.java
index 5b83944..2ee4738 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ShutdownIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ShutdownIT.java
@@ -34,6 +34,11 @@ import org.junit.Test;
 
 public class ShutdownIT extends ConfigurableMacIT {
   
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
   @Test(timeout = 4 * 60 * 1000)
   public void shutdownDuringIngest() throws Exception {
     Process ingest = cluster.exec(TestIngest.class, "-i", cluster.getInstanceName(), "-z", cluster.getZooKeepers(), "-u", "root", "-p", ROOT_PASSWORD, "--createTable");
@@ -42,7 +47,7 @@ public class ShutdownIT extends ConfigurableMacIT {
     ingest.destroy();
   }
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void shutdownDuringQuery() throws Exception {
     assertEquals(0, cluster.exec(TestIngest.class, "-i", cluster.getInstanceName(), "-z", cluster.getZooKeepers(), "-u", "root","-p", ROOT_PASSWORD, "--createTable").waitFor());
     Process verify = cluster.exec(VerifyIngest.class, "-i", cluster.getInstanceName(), "-z", cluster.getZooKeepers(), "-u", "root", "-p", ROOT_PASSWORD);
@@ -51,7 +56,7 @@ public class ShutdownIT extends ConfigurableMacIT {
     verify.destroy();
   }
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void shutdownDuringDelete() throws Exception {
     assertEquals(0, cluster.exec(TestIngest.class, "-i", cluster.getInstanceName(), "-z", cluster.getZooKeepers(), "-u", "root", "-p", ROOT_PASSWORD, "--createTable").waitFor());
     Process deleter = cluster.exec(TestRandomDeletes.class, "-i", cluster.getInstanceName(), "-z", cluster.getZooKeepers(), "-u", "root", "-p", ROOT_PASSWORD);
@@ -61,7 +66,7 @@ public class ShutdownIT extends ConfigurableMacIT {
   }
 
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void shutdownDuringDeleteTable() throws Exception {
     final Connector c = getConnector();
     for (int i = 0; i < 10 ; i++) {
@@ -90,7 +95,7 @@ public class ShutdownIT extends ConfigurableMacIT {
     assertEquals(0, cluster.exec(Admin.class, "stopAll").waitFor());
   }
   
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void adminStop() throws Exception {
     runAdminStopTest(getConnector(), cluster);
   }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/SimpleBalancerFairnessIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/SimpleBalancerFairnessIT.java b/test/src/test/java/org/apache/accumulo/test/functional/SimpleBalancerFairnessIT.java
index 13fea04..ce286d5 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/SimpleBalancerFairnessIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SimpleBalancerFairnessIT.java
@@ -50,7 +50,12 @@ public class SimpleBalancerFairnessIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
   
-  @Test(timeout = 7 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 7 * 60;
+  }
+
+  @Test
   public void simpleBalancerFairness() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/SparseColumnFamilyIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/SparseColumnFamilyIT.java b/test/src/test/java/org/apache/accumulo/test/functional/SparseColumnFamilyIT.java
index a0d62b0..9d68f76 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/SparseColumnFamilyIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SparseColumnFamilyIT.java
@@ -36,7 +36,12 @@ import org.junit.Test;
  */
 public class SparseColumnFamilyIT extends SimpleMacIT {
 
-  @Test(timeout = 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 60;
+  }
+
+  @Test
   public void sparceColumnFamily() throws Exception {
     String scftt = getUniqueNames(1)[0];
     Connector c = getConnector();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java b/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
index 9601de2..6203523 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
@@ -53,7 +53,12 @@ public class SplitIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 4 * 60;
+  }
+
+  @Test
   public void tabletShouldSplit() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");
@@ -86,7 +91,7 @@ public class SplitIT extends ConfigurableMacIT {
             .waitFor());
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void interleaveSplit() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");
@@ -97,7 +102,7 @@ public class SplitIT extends ConfigurableMacIT {
     assertTrue(c.tableOperations().listSplits("test_ingest").size() > 20);
   }
   
-  @Test(timeout = 4 * 60 * 1000)
+  @Test
   public void deleteSplit() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/SplitRecoveryIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/SplitRecoveryIT.java b/test/src/test/java/org/apache/accumulo/test/functional/SplitRecoveryIT.java
index d9de5d1..f6ebf31 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/SplitRecoveryIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SplitRecoveryIT.java
@@ -67,6 +67,10 @@ import org.junit.Test;
 
 public class SplitRecoveryIT extends ConfigurableMacIT {
   
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 30;
+  }
   
   private KeyExtent nke(String table, String endRow, String prevEndRow) {
     return new KeyExtent(new Text(table), endRow == null ? null : new Text(endRow), prevEndRow == null ? null : new Text(prevEndRow));
@@ -260,7 +264,7 @@ public class SplitRecoveryIT extends ConfigurableMacIT {
     new SplitRecoveryIT().run();
   }
   
-  @Test(timeout = 30 * 1000)
+  @Test
   public void test() throws Exception {
     assertEquals(0, exec(SplitRecoveryIT.class).waitFor());
   }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/StartIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/StartIT.java b/test/src/test/java/org/apache/accumulo/test/functional/StartIT.java
index dff47c4..82278af 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/StartIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/StartIT.java
@@ -24,7 +24,12 @@ import org.junit.Test;
 
 public class StartIT extends ConfigurableMacIT {
 
-  @Test(timeout = 30 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 30;
+  }
+
+  @Test
   public void test() throws Exception {
     assertTrue(exec(TestMain.class, "exception").waitFor() != 0);
     assertEquals(0, exec(TestMain.class, "success").waitFor());

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/TableIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/TableIT.java b/test/src/test/java/org/apache/accumulo/test/functional/TableIT.java
index 26021aa..832ec60 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/TableIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/TableIT.java
@@ -41,7 +41,12 @@ import org.junit.Test;
 
 public class TableIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     TableOperations to = c.tableOperations();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/TabletIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/TabletIT.java b/test/src/test/java/org/apache/accumulo/test/functional/TabletIT.java
index 9f7333d..b74399d 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/TabletIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/TabletIT.java
@@ -52,7 +52,12 @@ public class TabletIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void createTableTest() throws Exception {
     String tableName = getUniqueNames(1)[0];
     createTableTest(tableName, false);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/TimeoutIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/TimeoutIT.java b/test/src/test/java/org/apache/accumulo/test/functional/TimeoutIT.java
index d949a5d..4dc72e0 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/TimeoutIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/TimeoutIT.java
@@ -42,7 +42,12 @@ import org.junit.Test;
  */
 public class TimeoutIT extends SimpleMacIT {
 
-  @Test(timeout = 75 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 75;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector conn = getConnector();
     String[] tableNames = getUniqueNames(2);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/VisibilityIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/VisibilityIT.java b/test/src/test/java/org/apache/accumulo/test/functional/VisibilityIT.java
index 044a29d..1dd0bf1 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/VisibilityIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/VisibilityIT.java
@@ -47,7 +47,12 @@ import org.junit.Test;
 
 public class VisibilityIT extends SimpleMacIT {
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void run() throws Exception {
     Connector c = getConnector();
     String[] tableNames = getUniqueNames(2);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/WriteAheadLogIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/WriteAheadLogIT.java b/test/src/test/java/org/apache/accumulo/test/functional/WriteAheadLogIT.java
index 1c31c2f..af6eca5 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/WriteAheadLogIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/WriteAheadLogIT.java
@@ -50,7 +50,12 @@ public class WriteAheadLogIT extends ConfigurableMacIT {
     cfg.useMiniDFS(true);
   }
 
-  @Test(timeout = 10 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 10 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/WriteLotsIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/WriteLotsIT.java b/test/src/test/java/org/apache/accumulo/test/functional/WriteLotsIT.java
index ec481dd..214fc2f 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/WriteLotsIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/WriteLotsIT.java
@@ -29,7 +29,12 @@ import org.junit.Test;
 
 public class WriteLotsIT extends SimpleMacIT {
 
-  @Test(timeout = 90 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 90;
+  }
+
+  @Test
   public void writeLots() throws Exception {
     final Connector c = getConnector();
     final String tableName = getUniqueNames(1)[0];

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ZooCacheIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ZooCacheIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ZooCacheIT.java
index 9b089a1..47bc8be 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ZooCacheIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ZooCacheIT.java
@@ -28,6 +28,11 @@ import org.junit.Test;
 
 public class ZooCacheIT extends ConfigurableMacIT {
 
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
   private static String pathName = "/zcTest-42";
   private static File testDir;
 
@@ -36,7 +41,7 @@ public class ZooCacheIT extends ConfigurableMacIT {
     testDir = createSharedTestDir(ZooCacheIT.class.getName() + pathName);
   }
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Test
   public void test() throws Exception {
     assertEquals(0, exec(CacheTestClean.class, pathName, testDir.getAbsolutePath()).waitFor());
     final AtomicReference<Exception> ref = new AtomicReference<Exception>();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/344fe21e/test/src/test/java/org/apache/accumulo/test/functional/ZookeeperRestartIT.java
----------------------------------------------------------------------
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/ZookeeperRestartIT.java b/test/src/test/java/org/apache/accumulo/test/functional/ZookeeperRestartIT.java
index fe6c949..9becfc2 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/ZookeeperRestartIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ZookeeperRestartIT.java
@@ -49,7 +49,12 @@ public class ZookeeperRestartIT extends ConfigurableMacIT {
     cfg.setSiteConfig(siteConfig);
   }
 
-  @Test(timeout = 2 * 60 * 1000)
+  @Override
+  protected int defaultTimeoutSeconds() {
+    return 2 * 60;
+  }
+
+  @Test
   public void test() throws Exception {
     Connector c = getConnector();
     c.tableOperations().create("test_ingest");


Mime
View raw message