public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { using (stats.For(ReplicationOperation.Incoming.TombstoneRead)) { stats.RecordAttachmentTombstoneRead(); LastModifiedTicks = *(long *)Reader.ReadExactly(sizeof(long)); var size = *(int *)Reader.ReadExactly(sizeof(int)); ToDispose(Slice.From(context.Allocator, Reader.ReadExactly(size), size, ByteStringType.Immutable, out Key)); } }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { using (stats.For(ReplicationOperation.Incoming.TombstoneRead)) { stats.RecordRevisionTombstoneRead(); LastModifiedTicks = *(long *)Reader.ReadExactly(sizeof(long)); SetLazyStringValueFromString(context, out Id); SetLazyStringValueFromString(context, out Collection); Debug.Assert(Collection != null); } }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { var keySize = *(int *)Reader.ReadExactly(sizeof(int)); var key = Reader.ReadExactly(keySize); ToDispose(Slice.From(context.Allocator, key, keySize, ByteStringType.Immutable, out Key)); From = new DateTime(*(long *)Reader.ReadExactly(sizeof(long))); To = new DateTime(*(long *)Reader.ReadExactly(sizeof(long))); SetLazyStringValueFromString(context, out Collection); Debug.Assert(Collection != null); }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { // TODO: add stats RavenDB-13470 SetLazyStringValueFromString(context, out Id); SetLazyStringValueFromString(context, out Collection); Debug.Assert(Collection != null); var sizeOfData = *(int *)Reader.ReadExactly(sizeof(int)); var mem = Reader.AllocateMemory(sizeOfData); Reader.ReadExactly(mem, sizeOfData); Values = new BlittableJsonReaderObject(mem, sizeOfData, context); Values.BlittableValidation(); }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { using (stats.For(ReplicationOperation.Incoming.AttachmentRead)) { stats.RecordAttachmentRead(); var size = *(int *)Reader.ReadExactly(sizeof(int)); ToDispose(Slice.From(context.Allocator, Reader.ReadExactly(size), size, ByteStringType.Immutable, out Key)); SetLazyStringValueFromString(context, out Name); SetLazyStringValueFromString(context, out ContentType); var base64HashSize = *Reader.ReadExactly(sizeof(byte)); ToDispose(Slice.From(context.Allocator, Reader.ReadExactly(base64HashSize), base64HashSize, out Base64Hash)); } }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { IncomingReplicationStatsScope scope; if (Type == ReplicationItemType.Document) { scope = stats.For(ReplicationOperation.Incoming.DocumentRead, start: false); stats.RecordDocumentRead(); } else { scope = stats.For(ReplicationOperation.Incoming.TombstoneRead, start: false); stats.RecordDocumentTombstoneRead(); } using (scope.Start()) { LastModifiedTicks = *(long *)Reader.ReadExactly(sizeof(long)); Flags = *(DocumentFlags *)Reader.ReadExactly(sizeof(DocumentFlags)) | DocumentFlags.FromReplication; SetLazyStringValueFromString(context, out Id); var documentSize = *(int *)Reader.ReadExactly(sizeof(int)); if (documentSize != -1) //if -1, then this is a tombstone { using (var read = stats.For(ReplicationOperation.Incoming.DocumentRead).Start()) { read.RecordDocumentRead(); var mem = Reader.AllocateMemory(documentSize); Reader.ReadExactly(mem, documentSize); Data = new BlittableJsonReaderObject(mem, documentSize, context); Data.BlittableValidation(); } } else { SetLazyStringValueFromString(context, out Collection); } } }
public override unsafe void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats) { // TODO: add stats var keySize = *(int *)Reader.ReadExactly(sizeof(int)); var key = Reader.ReadExactly(keySize); ToDispose(Slice.From(context.Allocator, key, keySize, ByteStringType.Immutable, out Key)); var segmentSize = *(int *)Reader.ReadExactly(sizeof(int)); var mem = Reader.AllocateMemory(segmentSize); Memory.Copy(mem, Reader.ReadExactly(segmentSize), segmentSize); Segment = new TimeSeriesValuesSegment(mem, segmentSize); SetLazyStringValueFromString(context, out Collection); Debug.Assert(Collection != null); SetLazyStringValueFromString(context, out Name); Debug.Assert(Name != null); }
public abstract void Read(DocumentsOperationContext context, IncomingReplicationStatsScope stats);