protected void resetFileFactory() throws Exception { if (fileFactory != null) { fileFactory.stop(); } fileFactory = getFileFactory(); }
@Override public synchronized void stop(boolean ioCriticalError, boolean sendFailover) throws Exception { if (!started) { return; } if (!ioCriticalError) { performCachedLargeMessageDeletes(); // Must call close to make sure last id is persisted if (journalLoaded && idGenerator != null) idGenerator.persistCurrentID(); } final CountDownLatch latch = new CountDownLatch(1); executor.execute(new Runnable() { @Override public void run() { latch.countDown(); } }); latch.await(30, TimeUnit.SECONDS); beforeStop(); bindingsJournal.stop(); messageJournal.stop(); largeMessagesFactory.stop(); journalLoaded = false; started = false; }
fileFactory.stop();
fileFactory.stop();
factory.stop(); } catch (Exception e) {
factory.stop(); } catch (Exception e) {
@Override @After public void tearDown() throws Exception { stopComponent(journal); if (fileFactory != null) { fileFactory.stop(); } fileFactory = null; journal = null; super.tearDown(); }
@Override @After public void tearDown() throws Exception { stopComponent(journalImpl); if (factory != null) factory.stop(); records = null; transactions = null; incompleteTransactions = null; factory = null; journalImpl = null; super.tearDown(); }
private void testBuffer(final SequentialFileFactory factory) { factory.start(); ByteBuffer buffer = factory.newBuffer(100); try { for (byte b = 0; b < 100; b++) { buffer.put(b); } buffer.rewind(); for (byte b = 0; b < 100; b++) { Assert.assertEquals(b, buffer.get()); } buffer.limit(10); factory.clearBuffer(buffer); buffer.limit(100); buffer.rewind(); for (byte b = 0; b < 100; b++) { if (b < 10) { Assert.assertEquals(0, buffer.get()); } else { Assert.assertEquals(b, buffer.get()); } } } finally { factory.releaseBuffer(buffer); factory.stop(); } }
@Override @After public void tearDown() throws Exception { factory.stop(); factory = null; ActiveMQTestBase.forceGC(); Assert.assertEquals(0, LibaioContext.getTotalMaxIO()); super.tearDown(); }
fileFactory.stop();
@Test public void testMaxInt() throws Exception { setup(10, 10 * 1024, true); createJournal(); startJournal(); load(); stopJournal(); fileFactory.start(); List<String> files = fileFactory.listFiles(fileExtension); long fileID = Integer.MAX_VALUE; for (String fileStr : files) { SequentialFile file = fileFactory.createSequentialFile(fileStr); file.open(); JournalImpl.initFileHeader(fileFactory, file, journal.getUserVersion(), fileID++); file.close(); } fileFactory.stop(); startJournal(); load(); for (long i = 0; i < 100; i++) { add(i); stopJournal(); startJournal(); loadAndCheck(); } stopJournal(); }