diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/ArchiverSystemTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/ArchiverSystemTest.java index 002fd76f46..a2fdb44f46 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/ArchiverSystemTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/ArchiverSystemTest.java @@ -67,7 +67,7 @@ public class ArchiverSystemTest private Archiver archiver; private MediaDriver driver; private final UnsafeBuffer buffer = new UnsafeBuffer(new byte[4096]); - private File archiveDir; + private File archiveDir = TestUtil.makeTempDir(); private long recordingId; private long remaining; private int fragmentCount; @@ -79,7 +79,7 @@ public class ArchiverSystemTest private volatile long endPosition = -1; private Throwable trackerError; private final Random rnd = new Random(); - private long seed; + private long seed = System.nanoTime(); @Rule public TestWatcher testWatcher = new TestWatcher() @@ -98,10 +98,9 @@ protected void failed(final Throwable t, final Description description) @Before public void before() throws Exception { - seed = System.nanoTime(); rnd.setSeed(seed); - requestedInitialTermId = rnd.nextInt(1234); + final int termLength = 1 << (16 + rnd.nextInt(10)); // 1M to 8M final int mtu = 1 << (10 + rnd.nextInt(3)); // 1024 to 8096 final int termOffset = BitUtil.align(rnd.nextInt(termLength), FrameDescriptor.FRAME_ALIGNMENT); @@ -131,13 +130,11 @@ public void before() throws Exception driver = MediaDriver.launch(driverCtx); - final int segmentFileLength = termLength << rnd.nextInt(4); - archiveDir = TestUtil.makeTempDir(); archiverCtx .fileSyncLevel(0) .mediaDriverAgentInvoker(driver.sharedAgentInvoker()) .archiveDir(archiveDir) - .segmentFileLength(segmentFileLength) + .segmentFileLength(termLength << rnd.nextInt(4)) .threadingMode(archiverThreadingMode()) .countersManager(driverCtx.countersManager()) .errorHandler(driverCtx.errorHandler()); diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/CatalogTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/CatalogTest.java index 7efd63667f..3be23ea194 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/CatalogTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/CatalogTest.java @@ -35,7 +35,7 @@ public class CatalogTest private long recordingOneId; private long recordingTwoId; private long recordingThreeId; - private File archiveDir; + private File archiveDir = TestUtil.makeTempDir(); @Before public void before() throws Exception @@ -45,7 +45,6 @@ public void before() throws Exception Catalog.CATALOG_FRAME_LENGTH, RecordingDescriptorDecoder.BLOCK_LENGTH, RecordingDescriptorDecoder.SCHEMA_VERSION); - archiveDir = TestUtil.makeTempDir(); try (Catalog catalog = new Catalog(archiveDir, null, 0)) { diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/RecordingSessionTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/RecordingSessionTest.java index c38270aa40..42c4f1b7fe 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/RecordingSessionTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/RecordingSessionTest.java @@ -64,7 +64,7 @@ public class RecordingSessionTest private final RecordingEventsProxy recordingEventsProxy = mock(RecordingEventsProxy.class); private Image image = mockImage( SESSION_ID, INITIAL_TERM_ID, SOURCE_IDENTITY, TERM_BUFFER_LENGTH, mockSubscription(CHANNEL, STREAM_ID)); - private File tempDirForTest; + private File tempDirForTest = TestUtil.makeTempDir(); private FileChannel mockLogBufferChannel; private UnsafeBuffer mockLogBufferMapped; private File termFile; @@ -76,8 +76,6 @@ public class RecordingSessionTest @Before public void before() throws IOException { - tempDirForTest = TestUtil.makeTempDir(); - termFile = File.createTempFile("test.rec", "sourceIdentity"); mockLogBufferChannel = FileChannel.open(termFile.toPath(), CREATE, READ, WRITE); diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/RecordingWriterTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/RecordingWriterTest.java index 103669f0c4..2bc79482e7 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/RecordingWriterTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/RecordingWriterTest.java @@ -32,7 +32,7 @@ public class RecordingWriterTest private static final int SYNC_LEVEL = 2; private static final String CHANNEL = "channel"; private static final String SOURCE = "source"; - private File archiveDir; + private File archiveDir = TestUtil.makeTempDir(); private EpochClock epochClock = Mockito.mock(EpochClock.class); private final RecordingWriter.Context recordingCtx = new RecordingWriter.Context(); private FileChannel mockArchiveDirFileChannel = Mockito.mock(FileChannel.class); @@ -42,7 +42,6 @@ public class RecordingWriterTest @Before public void before() throws Exception { - archiveDir = TestUtil.makeTempDir(); recordingCtx .archiveDirChannel(mockArchiveDirFileChannel) .archiveDir(archiveDir) diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/ReplaySessionTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/ReplaySessionTest.java index 14d06e075a..de7c95ca21 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/ReplaySessionTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/ReplaySessionTest.java @@ -67,7 +67,7 @@ public class ReplaySessionTest Mockito.mock(ArchiveConductor.ReplayPublicationSupplier.class); private int messageCounter = 0; - private File archiveDir; + private File archiveDir = makeTempDir(); private ControlSessionProxy proxy = Mockito.mock(ControlSessionProxy.class); private EpochClock epochClock = mock(EpochClock.class); private RecordingWriter.Context context; @@ -76,8 +76,6 @@ public class ReplaySessionTest @Before public void before() throws Exception { - archiveDir = makeTempDir(); - context = new RecordingWriter.Context() .archiveDir(archiveDir) .epochClock(epochClock); diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/TestUtil.java b/aeron-archiver/src/test/java/io/aeron/archiver/TestUtil.java index 6caf503dce..725c360ea8 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/TestUtil.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/TestUtil.java @@ -42,9 +42,17 @@ public class TestUtil static final boolean DEBUG = false; private static final int SLEEP_TIME_NS = 5000; - public static File makeTempDir() throws IOException + public static File makeTempDir() { - final File tempDirForTest = File.createTempFile("archiver", "tmp"); + final File tempDirForTest; + try + { + tempDirForTest = File.createTempFile("archiver", "tmp"); + } + catch (final IOException ex) + { + throw new RuntimeException(ex); + } Assert.assertTrue(tempDirForTest.delete()); Assert.assertTrue(tempDirForTest.mkdir()); diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveRecordingLoadTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveRecordingLoadTest.java index 1a7b9bfa06..82128fd654 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveRecordingLoadTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveRecordingLoadTest.java @@ -61,7 +61,7 @@ public class ArchiveRecordingLoadTest private Archiver archiver; private MediaDriver driver; private final UnsafeBuffer buffer = new UnsafeBuffer(new byte[4096]); - private File archiveDir; + private File archiveDir = TestUtil.makeTempDir(); private long recordingId; private int[] fragmentLength; private long totalDataLength; @@ -101,7 +101,6 @@ public void setUp() throws Exception driver = MediaDriver.launch(driverCtx); - archiveDir = TestUtil.makeTempDir(); archiverCtx .fileSyncLevel(2) .archiveDir(archiveDir) diff --git a/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveReplayLoadTest.java b/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveReplayLoadTest.java index 469b985eba..f85fc7b603 100644 --- a/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveReplayLoadTest.java +++ b/aeron-archiver/src/test/java/io/aeron/archiver/workloads/ArchiveReplayLoadTest.java @@ -65,7 +65,7 @@ public class ArchiveReplayLoadTest private Archiver archiver; private MediaDriver driver; private UnsafeBuffer buffer = new UnsafeBuffer(new byte[4096]); - private File archiveDir; + private File archiveDir = TestUtil.makeTempDir(); private final long recordingId = 0; private long remaining; private int fragmentCount; @@ -107,7 +107,6 @@ public void setUp() throws Exception driver = MediaDriver.launch(driverCtx); - archiveDir = TestUtil.makeTempDir(); archiverCtx .archiveDir(archiveDir) .fileSyncLevel(0)