HBASE-12401 Add some timestamp signposts in IntegrationTestMTTR

This commit is contained in:
Nick Dimiduk 2014-10-31 15:09:18 -07:00
parent 4a803e79e1
commit e15a803b59
2 changed files with 31 additions and 23 deletions

View File

@ -278,6 +278,7 @@ public class IntegrationTestMTTR {
public void run(Callable<Boolean> monkeyCallable, String testName) throws Exception {
int maxIters = util.getHBaseClusterInterface().isDistributedCluster() ? 10 : 3;
LOG.info("Starting " + testName + " with " + maxIters + " iterations.");
// Array to keep track of times.
ArrayList<TimingResult> resultPuts = new ArrayList<TimingResult>(maxIters);
@ -285,33 +286,39 @@ public class IntegrationTestMTTR {
ArrayList<TimingResult> resultAdmin = new ArrayList<TimingResult>(maxIters);
long start = System.nanoTime();
// We're going to try this multiple times
for (int fullIterations = 0; fullIterations < maxIters; fullIterations++) {
// Create and start executing a callable that will kill the servers
Future<Boolean> monkeyFuture = executorService.submit(monkeyCallable);
try {
// We're going to try this multiple times
for (int fullIterations = 0; fullIterations < maxIters; fullIterations++) {
// Create and start executing a callable that will kill the servers
Future<Boolean> monkeyFuture = executorService.submit(monkeyCallable);
// Pass that future to the timing Callables.
Future<TimingResult> putFuture = executorService.submit(new PutCallable(monkeyFuture));
Future<TimingResult> scanFuture = executorService.submit(new ScanCallable(monkeyFuture));
Future<TimingResult> adminFuture = executorService.submit(new AdminCallable(monkeyFuture));
// Pass that future to the timing Callables.
Future<TimingResult> putFuture = executorService.submit(new PutCallable(monkeyFuture));
Future<TimingResult> scanFuture = executorService.submit(new ScanCallable(monkeyFuture));
Future<TimingResult> adminFuture = executorService.submit(new AdminCallable(monkeyFuture));
Future<Boolean> loadFuture = executorService.submit(new LoadCallable(monkeyFuture));
Future<Boolean> loadFuture = executorService.submit(new LoadCallable(monkeyFuture));
monkeyFuture.get();
loadFuture.get();
monkeyFuture.get();
loadFuture.get();
// Get the values from the futures.
TimingResult putTime = putFuture.get();
TimingResult scanTime = scanFuture.get();
TimingResult adminTime = adminFuture.get();
// Get the values from the futures.
TimingResult putTime = putFuture.get();
TimingResult scanTime = scanFuture.get();
TimingResult adminTime = adminFuture.get();
// Store the times to display later.
resultPuts.add(putTime);
resultScan.add(scanTime);
resultAdmin.add(adminTime);
// Store the times to display later.
resultPuts.add(putTime);
resultScan.add(scanTime);
resultAdmin.add(adminTime);
// Wait some time for everything to settle down.
Thread.sleep(5000l);
// Wait some time for everything to settle down.
Thread.sleep(5000l);
}
} catch (Exception e) {
long runtimeMs = TimeUnit.MILLISECONDS.convert(System.nanoTime() - start, TimeUnit.NANOSECONDS);
LOG.info(testName + " failed after " + runtimeMs + "ms.", e);
throw e;
}
long runtimeMs = TimeUnit.MILLISECONDS.convert(System.nanoTime() - start, TimeUnit.NANOSECONDS);

View File

@ -95,7 +95,7 @@ public abstract class HBaseCluster implements Closeable, Configurable {
}
/**
* Returns an {@link MasterAdminService.BlockingInterface} to the active master
* Returns an {@link MasterService.BlockingInterface} to the active master
*/
public abstract MasterService.BlockingInterface getMasterAdminService()
throws IOException;
@ -150,7 +150,8 @@ public abstract class HBaseCluster implements Closeable, Configurable {
}
Threads.sleep(100);
}
throw new IOException("did timeout waiting for region server to start:" + hostname);
throw new IOException("did timeout " + timeout + "ms waiting for region server to start: "
+ hostname);
}
/**