@Test
public void testReclaimAfterRollabck() throws Exception {
final int JOURNAL_SIZE = 2000;
final int COUNT = 10;
setupAndLoadJournal(JOURNAL_SIZE, 1);
for (int i = 0; i < COUNT; i++) {
journalImpl.appendAddRecordTransactional(1L, i, (byte) 0, new SimpleEncoding(1, (byte) 0));
journalImpl.forceMoveNextFile();
}
journalImpl.appendRollbackRecord(1L, false);
journalImpl.forceMoveNextFile();
assertTrue(Wait.waitFor(() -> factory.listFiles("tt").size() == COUNT + 3, 2000, 50));
journalImpl.checkReclaimStatus();
Assert.assertEquals(0, journalImpl.getDataFilesCount());
setupAndLoadJournal(JOURNAL_SIZE, 1);
Assert.assertEquals(0, journalImpl.getDataFilesCount());
Assert.assertEquals(2, factory.listFiles("tt").size());
}