@Override @Test public void loadTest() throws Exception { prepareForLoadTest(); readerThreads.linkToWriter(writerThreads); writerThreads.start(0, numKeys, NUM_THREADS); readerThreads.start(0, numKeys, NUM_THREADS); writerThreads.waitForFinish(); readerThreads.waitForFinish(); assertEquals(0, writerThreads.getNumWriteFailures()); assertEquals(0, readerThreads.getNumReadFailures()); assertEquals(0, readerThreads.getNumReadErrors()); assertEquals(numKeys, readerThreads.getNumUniqueKeysVerified()); }
protected MultiThreadedReader prepareReaderThreads(LoadTestDataGenerator dataGen, Configuration conf, TableName tableName, double verifyPercent) throws IOException { MultiThreadedReader reader = new MultiThreadedReader(dataGen, conf, tableName, verifyPercent); return reader; }
protected void runLoadTestOnExistingTable() throws IOException { writerThreads.start(0, numKeys, NUM_THREADS); writerThreads.waitForFinish(); assertEquals(0, writerThreads.getNumWriteFailures()); readerThreads.start(0, numKeys, NUM_THREADS); readerThreads.waitForFinish(); assertEquals(0, readerThreads.getNumReadFailures()); assertEquals(0, readerThreads.getNumReadErrors()); assertEquals(numKeys, readerThreads.getNumKeysVerified()); }
readerThreads.setMaxErrors(maxReadErrors); readerThreads.setKeyWindow(keyWindow); readerThreads.setMultiGetBatchSize(multiGetBatchSize); readerThreads.setRegionReplicaId(regionReplicaId); LOG.info("Concurrent write/read workload: making readers aware of the " + "write point"); readerThreads.linkToWriter(isUpdate ? updaterThreads : writerThreads); readerThreads.start(startKey, endKey, numReaderThreads); readerThreads.waitForFinish(); success = success && readerThreads.getNumReadErrors() == 0 && readerThreads.getNumReadFailures() == 0;
MultiThreadedReader reader = new MultiThreadedReader(dataGen, conf, TABLE_NAME, 100); reader.linkToWriter(writer); reader.start(startKey, endKey, readThreads); writer.waitForFinish(); reader.waitForFinish(); LOG.error("Write failed"); } else { success = reader.getNumReadErrors() == 0 && reader.getNumReadFailures() == 0; if (!success) { LOG.error("Read failed");
@Override public void start(long startKey, long endKey, int numThreads) throws IOException { super.start(startKey, endKey, numThreads); this.timeoutThread = new TimeoutThread(this.runTime); this.timeoutThread.start(); }
@Override public void waitForFinish() { try { this.timeoutThread.join(); } catch (InterruptedException e) { e.printStackTrace(); } this.aborted = true; super.waitForFinish(); }
readerThreads.setMaxErrors(maxReadErrors); readerThreads.setKeyWindow(keyWindow); readerThreads.setMultiGetBatchSize(multiGetBatchSize); readerThreads.setRegionReplicaId(regionReplicaId); LOG.info("Concurrent write/read workload: making readers aware of the " + "write point"); readerThreads.linkToWriter(isUpdate ? updaterThreads : writerThreads); readerThreads.start(startKey, endKey, numReaderThreads); readerThreads.waitForFinish(); success = success && readerThreads.getNumReadErrors() == 0 && readerThreads.getNumReadFailures() == 0;
MultiThreadedReader reader = new MultiThreadedReader(dataGen, conf, TABLE_NAME, 100); reader.linkToWriter(writer); reader.start(startKey, endKey, readThreads); writer.waitForFinish(); reader.waitForFinish(); LOG.error("Write failed"); } else { success = reader.getNumReadErrors() == 0 && reader.getNumReadFailures() == 0; if (!success) { LOG.error("Read failed");
protected void runLoadTestOnExistingTable() throws IOException { writerThreads.start(0, numKeys, NUM_THREADS); writerThreads.waitForFinish(); assertEquals(0, writerThreads.getNumWriteFailures()); readerThreads.start(0, numKeys, NUM_THREADS); readerThreads.waitForFinish(); assertEquals(0, readerThreads.getNumReadFailures()); assertEquals(0, readerThreads.getNumReadErrors()); assertEquals(numKeys, readerThreads.getNumKeysVerified()); }
@Override public void start(long startKey, long endKey, int numThreads) throws IOException { super.start(startKey, endKey, numThreads); this.timeoutThread = new TimeoutThread(this.runTime); this.timeoutThread.start(); }
@Override public void waitForFinish() { try { this.timeoutThread.join(); } catch (InterruptedException e) { e.printStackTrace(); } this.aborted = true; super.waitForFinish(); }
readerThreads.setMaxErrors(maxReadErrors); readerThreads.setKeyWindow(keyWindow); readerThreads.setMultiGetBatchSize(multiGetBatchSize); readerThreads.setRegionReplicaId(regionReplicaId); LOG.info("Concurrent write/read workload: making readers aware of the " + "write point"); readerThreads.linkToWriter(isUpdate ? updaterThreads : writerThreads); readerThreads.start(startKey, endKey, numReaderThreads); readerThreads.waitForFinish(); success = success && readerThreads.getNumReadErrors() == 0 && readerThreads.getNumReadFailures() == 0;
@Override @Test public void loadTest() throws Exception { prepareForLoadTest(); readerThreads.linkToWriter(writerThreads); writerThreads.start(0, numKeys, NUM_THREADS); readerThreads.start(0, numKeys, NUM_THREADS); writerThreads.waitForFinish(); readerThreads.waitForFinish(); assertEquals(0, writerThreads.getNumWriteFailures()); assertEquals(0, readerThreads.getNumReadFailures()); assertEquals(0, readerThreads.getNumReadErrors()); assertEquals(numKeys, readerThreads.getNumUniqueKeysVerified()); }
protected MultiThreadedReader prepareReaderThreads(LoadTestDataGenerator dataGen, Configuration conf, TableName tableName, double verifyPercent) throws IOException { MultiThreadedReader reader = new MultiThreadedReader(dataGen, conf, tableName, verifyPercent); return reader; }