move singleDocSegmentsCount maintinence to mergeSegments

git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@432580 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Yonik Seeley 2006-08-18 13:33:16 +00:00
parent fa293670a1
commit abb1bfc290
1 changed files with 7 additions and 4 deletions

View File

@ -711,12 +711,10 @@ public class IndexWriter {
mergeDocs += si.docCount; mergeDocs += si.docCount;
} }
if (mergeDocs >= targetMergeDocs) { // found a merge to do if (mergeDocs >= targetMergeDocs) // found a merge to do
mergeSegments(minSegment+1); mergeSegments(minSegment+1);
singleDocSegmentsCount = 0; else
} else {
break; break;
}
targetMergeDocs *= mergeFactor; // increase target size targetMergeDocs *= mergeFactor; // increase target size
} }
@ -749,6 +747,11 @@ public class IndexWriter {
segmentsToDelete.addElement(reader); // queue segment for deletion segmentsToDelete.addElement(reader); // queue segment for deletion
} }
// update 1-doc segments counter accordin to range of merged segments
if (singleDocSegmentsCount>0) {
singleDocSegmentsCount = Math.min(singleDocSegmentsCount, segmentInfos.size()-end);
}
int mergedDocCount = merger.merge(); int mergedDocCount = merger.merge();
if (infoStream != null) { if (infoStream != null) {