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();
       }