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 2012/01/18 17:10:18 UTC

svn commit: r1232943 - /lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java

Author: simonw
Date: Wed Jan 18 16:10:17 2012
New Revision: 1232943

URL: http://svn.apache.org/viewvc?rev=1232943&view=rev
Log:
remove files of dropped segments right after merge

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=1232943&r1=1232942&r2=1232943&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 Wed Jan 18 16:10:17 2012
@@ -3174,6 +3174,8 @@ public class IndexWriter implements Clos
     
     if (dropSegment) {
       readerPool.drop(merge.info);
+      deleter.deleteNewFiles(merge.info.files());
+      assert !segmentInfos.contains(merge.info);
     } else {
       if (mergedDeletes != null && !poolReaders) {
         mergedDeletes.writeLiveDocs(directory);
@@ -3191,7 +3193,7 @@ public class IndexWriter implements Clos
 
     closeMergeReaders(merge, false);
 
-    if (merge.maxNumSegments != -1) {
+    if (merge.maxNumSegments != -1 && !dropSegment) {
       // cascade the forceMerge:
       if (!segmentsToMerge.containsKey(merge.info)) {
         segmentsToMerge.put(merge.info, Boolean.FALSE);