protected String debugJournal() throws Exception { return "***************************************************\n" + ((JournalImpl) journal).debug() + "***************************************************\n"; }
@Test public void testPartialDelete() throws Exception { final int JOURNAL_SIZE = 10000; setupAndLoadJournal(JOURNAL_SIZE, 100); journalImpl.setAutoReclaim(false); journalImpl.checkReclaimStatus(); journalImpl.debugWait(); Assert.assertEquals(2, factory.listFiles("tt").size()); UnitTestLogger.LOGGER.debug("Initial:--> " + journalImpl.debug()); UnitTestLogger.LOGGER.debug("_______________________________"); for (int i = 0; i < 50; i++) { journalImpl.appendAddRecord(i, (byte) 1, new SimpleEncoding(1, (byte) 'x'), false); } journalImpl.forceMoveNextFile(); // as the request to a new file is asynchronous, we need to make sure the // async requests are done journalImpl.debugWait(); Assert.assertEquals(3, factory.listFiles("tt").size()); for (int i = 10; i < 50; i++) { journalImpl.appendDeleteRecord(i, false); } journalImpl.debugWait(); setupAndLoadJournal(JOURNAL_SIZE, 100); Assert.assertEquals(10, records.size()); Assert.assertEquals(3, factory.listFiles("tt").size()); }