LUCENE-4775: move computation of merge bytes size earlier

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1448628 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael McCandless 2013-02-21 13:16:18 +00:00
parent 92b246b4c0
commit 81213a6ac1
2 changed files with 13 additions and 11 deletions

View File

@ -3363,6 +3363,18 @@ public class IndexWriter implements Closeable, TwoPhaseCommit {
mergingSegments.add(info);
}
assert merge.estimatedMergeBytes == 0;
assert merge.totalMergeBytes == 0;
for(SegmentInfoPerCommit info : merge.segments) {
if (info.info.getDocCount() > 0) {
final int delCount = numDeletedDocs(info);
assert delCount <= info.info.getDocCount();
final double delRatio = ((double) delCount)/info.info.getDocCount();
merge.estimatedMergeBytes += info.sizeInBytes() * (1.0 - delRatio);
merge.totalMergeBytes += info.sizeInBytes();
}
}
// Merge is now registered
merge.registerDone = true;
@ -3451,17 +3463,6 @@ public class IndexWriter implements Closeable, TwoPhaseCommit {
if (infoStream.isEnabled("IW")) {
infoStream.message("IW", "merge seg=" + merge.info.info.name + " " + segString(merge.segments));
}
assert merge.estimatedMergeBytes == 0;
for(SegmentInfoPerCommit info : merge.segments) {
if (info.info.getDocCount() > 0) {
final int delCount = numDeletedDocs(info);
assert delCount <= info.info.getDocCount();
final double delRatio = ((double) delCount)/info.info.getDocCount();
merge.estimatedMergeBytes += info.sizeInBytes() * (1.0 - delRatio);
merge.totalMergeBytes += info.sizeInBytes();
}
}
}
static void setDiagnostics(SegmentInfo info, String source) {

View File

@ -365,6 +365,7 @@ public class TestConcurrentMergeScheduler extends LuceneTestCase {
w.deleteDocuments(new Term("id", ""+random().nextInt(i+1)));
}
}
assertTrue(((TrackingCMS) iwc.getMergeScheduler()).totMergedBytes != 0);
w.close();
d.close();
}