public void testCloseDuringCompaction() throws Exception { compactor.add(createSoplog(0, 100, 0)); compactor.add(createSoplog(100, 100, 1)); compactor.testDelayDuringCompaction = new CountDownLatch(1); WaitingHandler wh = new WaitingHandler(); compactor.compact(false, wh); compactor.close(); boolean compacted = wh.waitForCompletion(); assertFalse(compacted); assertEquals(0, compactor.getActiveReaders(null, null).size()); }
public void testClear() throws IOException { compactor.add(createSoplog(0, 100, 0)); compactor.add(createSoplog(100, 100, 1)); compactor.clear(); assertEquals(0, compactor.getActiveReaders(null, null).size()); assertFalse(compactor.getLevel(0).needsCompaction()); }
public void testInterruptedCompaction() throws IOException { compactor.add(createSoplog(0, 100, 0)); compactor.add(createSoplog(100, 100, 1)); compactor.testAbortDuringCompaction = true; boolean compacted = compactor.compact(); assertFalse(compacted); assertEquals(2, compactor.getActiveReaders(null, null).size()); assertTrue(compactor.getLevel(0).needsCompaction()); }
public void testClearDuringCompaction() throws Exception { compactor.add(createSoplog(0, 100, 0)); compactor.add(createSoplog(100, 100, 1)); compactor.testDelayDuringCompaction = new CountDownLatch(1); WaitingHandler wh = new WaitingHandler(); LogService.logger().fine("Invoking compact"); compactor.compact(false, wh); LogService.logger().fine("Invoking clear"); compactor.clear(); boolean compacted = wh.waitForCompletion(); assertFalse(compacted); assertEquals(0, compactor.getActiveReaders(null, null).size()); }