internal FlushedSegment(SegmentCommitInfo segmentInfo, FieldInfos fieldInfos, BufferedUpdates segmentUpdates, MutableBits liveDocs, int delCount) { this.SegmentInfo = segmentInfo; this.FieldInfos = fieldInfos; this.SegmentUpdates = segmentUpdates != null && segmentUpdates.Any() ? new FrozenBufferedUpdates(segmentUpdates, true) : null; this.LiveDocs = liveDocs; this.DelCount = delCount; }
public override void WriteLiveDocs(MutableBits bits, Directory dir, SegmentCommitInfo info, int newDelCount, IOContext context) { string filename = IndexFileNames.FileNameFromGeneration(info.Info.Name, DELETES_EXTENSION, info.NextDelGen); BitVector liveDocs = (BitVector)bits; Debug.Assert(liveDocs.Count() == info.Info.DocCount - info.DelCount - newDelCount); Debug.Assert(liveDocs.Length() == info.Info.DocCount); liveDocs.Write(dir, filename, context); }
/// <summary> /// Persist live docs bits. Use {@link /// SegmentCommitInfo#getNextDelGen} to determine the /// generation of the deletes file you should write to. /// </summary> public abstract void WriteLiveDocs(MutableBits bits, Directory dir, SegmentCommitInfo info, int newDelCount, IOContext context);
public override void WriteLiveDocs(MutableBits bits, Directory dir, SegmentCommitInfo info, int newDelCount, IOContext context) { string filename = IndexFileNames.FileNameFromGeneration(info.Info.Name, DELETES_EXTENSION, info.NextDelGen); BitVector liveDocs = (BitVector)bits; Debug.Assert(liveDocs.Count() == info.Info.DocCount - info.DelCount - newDelCount); Debug.Assert(liveDocs.Length() == info.Info.DocCount); liveDocs.Write(dir, filename, context); }