You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2011/08/07 22:15:37 UTC
svn commit: r1154759 -
/lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java
Author: simonw
Date: Sun Aug 7 20:15:37 2011
New Revision: 1154759
URL: http://svn.apache.org/viewvc?rev=1154759&view=rev
Log:
LUCENE-3356: prefer SegemntInfo#getDelCount if pooled reader has less deletes
Modified:
lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java
Modified: lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java?rev=1154759&r1=1154758&r2=1154759&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java (original)
+++ lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java Sun Aug 7 20:15:37 2011
@@ -750,7 +750,10 @@ public class IndexWriter implements Clos
SegmentReader reader = readerPool.getIfExists(info);
try {
if (reader != null) {
- return reader.numDeletedDocs();
+ // the pulled reader could be from an in-flight merge
+ // while the info we see has already new applied deletes after a commit
+ // we max out the delets since deletes never shrink
+ return Math.max(info.getDelCount(), reader.numDeletedDocs());
} else {
return info.getDelCount();
}