public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename); var recordFactory = LogFormatHelper <TLogFormat, TStreamId> .RecordFactory; var streamId1 = LogFormatHelper <TLogFormat, TStreamId> .StreamId; var streamId2 = LogFormatHelper <TLogFormat, TStreamId> .StreamId2; var eventTypeId1 = LogFormatHelper <TLogFormat, TStreamId> .EventTypeId; var eventTypeId2 = LogFormatHelper <TLogFormat, TStreamId> .EventTypeId2; _prepare1 = LogRecord.Prepare(recordFactory, 0, _corrId, _eventId, 0, 0, streamId1, 1, PrepareFlags.None, eventTypeId1, new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); var r1 = _chunk.TryAppend(_prepare1); _written1 = r1.Success; _position1 = r1.OldPosition; _prepare2 = LogRecord.Prepare(recordFactory, r1.NewPosition, _corrId, _eventId, 0, 0, streamId2, 2, PrepareFlags.None, eventTypeId2, new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); var r2 = _chunk.TryAppend(_prepare2); _written2 = r2.Success; _position2 = r2.OldPosition; _chunk.Flush(); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename); var logFormat = LogFormatHelper <TLogFormat, TStreamId> .LogFormat; logFormat.StreamNameIndex.GetOrAddId("test", out var streamId1, out _, out _); logFormat.StreamNameIndex.GetOrAddId("test2", out var streamId2, out _, out _); _prepare1 = LogRecord.Prepare(logFormat.RecordFactory, 0, _corrId, _eventId, 0, 0, streamId1, 1, PrepareFlags.None, "Foo", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); var r1 = _chunk.TryAppend(_prepare1); _written1 = r1.Success; _position1 = r1.OldPosition; _prepare2 = LogRecord.Prepare(logFormat.RecordFactory, r1.NewPosition, _corrId, _eventId, 0, 0, streamId2, 2, PrepareFlags.None, "Foo2", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); var r2 = _chunk.TryAppend(_prepare2); _written2 = r2.Success; _position2 = r2.OldPosition; _chunk.Flush(); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename); _chunk.Complete(); _testChunk = TFChunk.FromCompletedFile(Filename, true, false, 5, reduceFileCachePressure: false); }
public override void SetUp() { base.SetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename, 1000); _reader = _chunk.AcquireReader(); _chunk.MarkForDeletion(); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename, isScavenged: true); _chunk.CompleteScavenge(new PosMap[0]); _chunk.CacheInMemory(); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _record = new PrepareLogRecord(0, _corrId, _eventId, 0, 0, "test", 1, new DateTime(2000, 1, 1, 12, 0, 0), PrepareFlags.None, "Foo", new byte[12], new byte[15]); _chunk = TFChunkHelper.CreateNewChunk(Filename); _result = _chunk.TryAppend(_record); }
public override void SetUp() { base.SetUp(); var record = new PrepareLogRecord(15556, _corrId, _eventId, 15556, 0, "test", 1, new DateTime(2000, 1, 1, 12, 0, 0), PrepareFlags.None, "Foo", new byte[12], new byte[15]); _chunk = TFChunkHelper.CreateNewChunk(Filename, 20); _written = _chunk.TryAppend(record).Success; }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename); _chunk.Complete(); _testChunk = TFChunk.FromCompletedFile(Filename, true, false, Constants.TFChunkInitialReaderCountDefault, Constants.TFChunkMaxReaderCountDefault, reduceFileCachePressure: false); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _record = new PrepareLogRecord(0, _corrId, _eventId, 0, 0, "test", 1, new DateTime(2000, 1, 1, 12, 0, 0), PrepareFlags.None, "Foo", new byte[12], new byte[15]); _chunk = TFChunkHelper.CreateNewChunk(Filename); _result = _chunk.TryAppend(_record); _chunk.Flush(); _chunk.Complete(); _cachedChunk = TFChunk.FromCompletedFile(Filename, verifyHash: true, unbufferedRead: false, initialReaderCount: 5); _cachedChunk.CacheInMemory(); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); var recordFactory = LogFormatHelper <TLogFormat, TStreamId> .RecordFactory; var streamId = LogFormatHelper <TLogFormat, TStreamId> .StreamId; _record = LogRecord.Prepare(recordFactory, 0, _corrId, _eventId, 0, 0, streamId, 1, PrepareFlags.None, "Foo", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); _chunk = TFChunkHelper.CreateNewChunk(Filename); _result = _chunk.TryAppend(_record); }
public override void SetUp() { base.SetUp(); var recordFactory = LogFormatHelper <TLogFormat, TStreamId> .RecordFactory; var streamId = LogFormatHelper <TLogFormat, TStreamId> .StreamId; var record = LogRecord.Prepare(recordFactory, 15556, _corrId, _eventId, 15556, 0, streamId, 1, PrepareFlags.None, "Foo", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); _chunk = TFChunkHelper.CreateNewChunk(Filename, 20); _written = _chunk.TryAppend(record).Success; }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); var logFormat = LogFormatHelper <TLogFormat, TStreamId> .LogFormat; logFormat.StreamNameIndex.GetOrAddId("test", out var streamId, out _, out _); _record = LogRecord.Prepare(logFormat.RecordFactory, 0, _corrId, _eventId, 0, 0, streamId, 1, PrepareFlags.None, "Foo", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); _chunk = TFChunkHelper.CreateNewChunk(Filename); _result = _chunk.TryAppend(_record); }
public void if_asked_for_more_than_buffer_size_will_only_read_buffer_size() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 3000); using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextRawBytes(3000, buffer); Assert.IsFalse(result.IsEOF); Assert.AreEqual(1024, result.BytesRead); } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public void the_file_will_not_be_deleted_until_reader_released() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 2000); using (var reader = chunk.AcquireReader()) { chunk.MarkForDeletion(); var buffer = new byte[1024]; var result = reader.ReadNextRawBytes(1024, buffer); Assert.IsFalse(result.IsEOF); Assert.AreEqual(1024, result.BytesRead); } chunk.WaitForDestroy(5000); }
public void a_read_past_eof_returns_eof_and_no_footer() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 300); using (var reader = chunk.AcquireReader()) { var buffer = new byte[8092]; var result = reader.ReadNextRawBytes(8092, buffer); Assert.IsTrue(result.IsEOF); Assert.AreEqual(4096, result.BytesRead); //does not includes header and footer space } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public void a_read_on_new_file_can_be_performed() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 2000); using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextRawBytes(1024, buffer); Assert.IsFalse(result.IsEOF); Assert.AreEqual(1024, result.BytesRead); } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public void a_read_on_scavenged_chunk_does_not_include_map() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("afile"), 200, isScavenged: true); chunk.CompleteScavenge(new[] { new PosMap(0, 0), new PosMap(1, 1) }); using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextDataBytes(1024, buffer); Assert.IsTrue(result.IsEOF); Assert.AreEqual(0, result.BytesRead); //header 128 + footer 128 + map 16 } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public void a_read_past_end_of_completed_chunk_does_not_include_footer() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 300); chunk.Complete(); // chunk has 0 bytes of actual data using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextDataBytes(1024, buffer); Assert.IsTrue(result.IsEOF); Assert.AreEqual(0, result.BytesRead); } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); var recordFactory = LogFormatHelper <TLogFormat, TStreamId> .RecordFactory; var streamId = LogFormatHelper <TLogFormat, TStreamId> .StreamId; _record = LogRecord.Prepare(recordFactory, 0, _corrId, _eventId, 0, 0, streamId, 1, PrepareFlags.None, "Foo", new byte[12], new byte[15], new DateTime(2000, 1, 1, 12, 0, 0)); _chunk = TFChunkHelper.CreateNewChunk(Filename); _result = _chunk.TryAppend(_record); _chunk.Flush(); _chunk.Complete(); _cachedChunk = TFChunk.FromCompletedFile(Filename, verifyHash: true, unbufferedRead: false, initialReaderCount: Constants.TFChunkInitialReaderCountDefault, maxReaderCount: Constants.TFChunkMaxReaderCountDefault, reduceFileCachePressure: false); _cachedChunk.CacheInMemory(); }
public void a_read_past_eof_doesnt_return_eof_if_chunk_is_not_yet_completed() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 300); var rec = LogRecord.Commit(0, Guid.NewGuid(), 0, 0); Assert.IsTrue(chunk.TryAppend(rec).Success, "Record was not appended"); using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextDataBytes(1024, buffer); Assert.IsFalse(result.IsEOF, "EOF was returned."); //does not include header and footer space Assert.AreEqual(rec.GetSizeWithLengthPrefixAndSuffix(), result.BytesRead, "Read wrong number of bytes."); } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public void if_asked_for_more_than_buffer_size_will_only_read_buffer_size() { var chunk = TFChunkHelper.CreateNewChunk(GetFilePathFor("file1"), 3000); var rec = LogRecord.Prepare(0, Guid.NewGuid(), Guid.NewGuid(), 0, 0, "ES", -1, PrepareFlags.None, "ET", new byte[2000], null); Assert.IsTrue(chunk.TryAppend(rec).Success, "Record was not appended"); using (var reader = chunk.AcquireReader()) { var buffer = new byte[1024]; var result = reader.ReadNextDataBytes(3000, buffer); Assert.IsFalse(result.IsEOF); Assert.AreEqual(1024, result.BytesRead); } chunk.MarkForDeletion(); chunk.WaitForDestroy(5000); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename); _prepare1 = new PrepareLogRecord(0, _corrId, _eventId, 0, 0, "test", 1, new DateTime(2000, 1, 1, 12, 0, 0), PrepareFlags.None, "Foo", new byte[12], new byte[15]); var r1 = _chunk.TryAppend(_prepare1); _written1 = r1.Success; _position1 = r1.OldPosition; _prepare2 = new PrepareLogRecord(r1.NewPosition, _corrId, _eventId, 0, 0, "test2", 2, new DateTime(2000, 1, 1, 12, 0, 0), PrepareFlags.None, "Foo2", new byte[12], new byte[15]); var r2 = _chunk.TryAppend(_prepare2); _written2 = r2.Success; _position2 = r2.OldPosition; _chunk.Flush(); }
public override void SetUp() { base.SetUp(); _chunk = TFChunkHelper.CreateNewChunk(Filename, 1024); }