void rollbackSegmentInfos(List<SegmentCommitInfo> infos) { this.clear(); this.addAll(infos); }
segmentInfos.addAll(infos); checkpoint();
void rollbackSegmentInfos(List<SegmentCommitInfo> infos) { this.clear(); this.addAll(infos); }
void rollbackSegmentInfos(List<SegmentCommitInfo> infos) { this.clear(); this.addAll(infos); }
void rollbackSegmentInfos(List<SegmentCommitInfo> infos) { this.clear(); this.addAll(infos); }
/** * Returns a new SegmentInfos containg the SegmentInfo * instances in the specified range first (inclusive) to * last (exclusive), so total number of segments returned * is last-first. */ public SegmentInfos range(int first, int last) { SegmentInfos infos = new SegmentInfos(); infos.addAll(super.subList(first, last)); return infos; }
/** * Returns a new SegmentInfos containg the SegmentInfo * instances in the specified range first (inclusive) to * last (exclusive), so total number of segments returned * is last-first. */ public SegmentInfos range(int first, int last) { SegmentInfos infos = new SegmentInfos(); infos.addAll(super.subList(first, last)); return infos; }
/** * Finds merges necessary to expunge all deletes from the * index. The number of large segments will stay the same. */ @Override public MergeSpecification findForcedDeletesMerges(SegmentInfos infos) throws CorruptIndexException, IOException { final int numSegs = infos.size(); final int numLargeSegs = (numSegs < _numLargeSegments ? numSegs : _numLargeSegments); MergeSpecification spec = null; if (numLargeSegs < numSegs) { List<SegmentInfoPerCommit> smallSegmentList = infos.asList().subList(numLargeSegs, numSegs); SegmentInfos smallSegments = new SegmentInfos(); smallSegments.addAll(smallSegmentList); spec = super.findForcedDeletesMerges(smallSegments); } if (spec == null) spec = new MergeSpecification(); for (int i = 0; i < numLargeSegs; i++) { SegmentInfoPerCommit info = infos.info(i); if (info.hasDeletions()) { spec.add(new OneMerge(infos.asList().subList(i, i + 1))); } } return spec; }
/** * Finds merges necessary to expunge all deletes from the * index. The number of large segments will stay the same. */ @Override public MergeSpecification findForcedDeletesMerges(SegmentInfos infos) throws CorruptIndexException, IOException { final int numSegs = infos.size(); final int numLargeSegs = (numSegs < _numLargeSegments ? numSegs : _numLargeSegments); MergeSpecification spec = null; if(numLargeSegs < numSegs) { List<SegmentInfo> smallSegmentList = infos.asList().subList(numLargeSegs, numSegs); SegmentInfos smallSegments = new SegmentInfos(); smallSegments.addAll(smallSegmentList); spec = super.findForcedDeletesMerges(smallSegments); } if(spec == null) spec = new MergeSpecification(); for(int i = 0; i < numLargeSegs; i++) { SegmentInfo info = infos.info(i); if(info.hasDeletions()) { spec.add(new OneMerge(infos.asList().subList(i, i + 1))); } } return spec; }
/** * Finds merges necessary to expunge all deletes from the * index. The number of large segments will stay the same. */ @Override public MergeSpecification findForcedDeletesMerges(SegmentInfos infos) throws CorruptIndexException, IOException { final int numSegs = infos.size(); final int numLargeSegs = (numSegs < _numLargeSegments ? numSegs : _numLargeSegments); MergeSpecification spec = null; if (numLargeSegs < numSegs) { List<SegmentInfoPerCommit> smallSegmentList = infos.asList().subList(numLargeSegs, numSegs); SegmentInfos smallSegments = new SegmentInfos(); smallSegments.addAll(smallSegmentList); spec = super.findForcedDeletesMerges(smallSegments); } if (spec == null) spec = new MergeSpecification(); for (int i = 0; i < numLargeSegs; i++) { SegmentInfoPerCommit info = infos.info(i); if (info.hasDeletions()) { spec.add(new OneMerge(infos.asList().subList(i, i + 1))); } } return spec; }
segmentInfos.addAll(localRollbackSegmentInfos); localRollbackSegmentInfos = null;
segmentInfos.addAll(localRollbackSegmentInfos); localRollbackSegmentInfos = null;
segmentInfos.addAll(rollback);
segmentInfos.addAll(rollback);
segmentInfos.addAll(rollbackSegmentInfos);
segmentInfos.addAll(rollbackSegmentInfos);
smallSegments.addAll(smallSegmentList); MergeSpecification spec = super.findMerges(mergeTrigger, smallSegments);
smallSegments.addAll(smallSegmentList); MergeSpecification spec = super.findMerges(mergeTrigger, smallSegments);
smallSegments.addAll(smallSegmentList); MergeSpecification spec = super.findMerges(smallSegments);
segmentInfos.addAll(infos); checkpoint();