You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2013/10/17 23:16:42 UTC
svn commit: r1533263 - in /lucene/dev/branches/branch_4x/lucene/core/src:
java/org/apache/lucene/index/IndexWriter.java
test/org/apache/lucene/index/TestIndexWriter.java
Author: mikemccand
Date: Thu Oct 17 21:16:42 2013
New Revision: 1533263
URL: http://svn.apache.org/r1533263
Log:
LUCENE-5289: clarify that hasUncommittedChanges can still be true after commit, due to merges
Modified:
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java?rev=1533263&r1=1533262&r2=1533263&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java Thu Oct 17 21:16:42 2013
@@ -2916,7 +2916,12 @@ public class IndexWriter implements Clos
commitInternal();
}
- /** Returns true if there are changes that have not been committed */
+ /** Returns true if there are changes that have not been
+ * committed. Note that if a merge kicked off as a
+ * result of flushing a new segment during {@link
+ * #commit}, or a concurrent merged finished,
+ * this method may return true right after you
+ * had just called {@link #commit}. */
public final boolean hasUncommittedChanges() {
return changeCount != lastCommitChangeCount || docWriter.anyChanges() || bufferedDeletesStream.any();
}
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1533263&r1=1533262&r2=1533263&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java Thu Oct 17 21:16:42 2013
@@ -2304,6 +2304,11 @@ public class TestIndexWriter extends Luc
doc.add(newTextField("myfield", "a b c", Field.Store.NO));
writer.addDocument(doc);
assertTrue(writer.hasUncommittedChanges());
+
+ // Must commit, waitForMerges, commit again, to be
+ // certain that hasUncommittedChanges returns false:
+ writer.commit();
+ writer.waitForMerges();
writer.commit();
assertFalse(writer.hasUncommittedChanges());
writer.addDocument(doc);
@@ -2313,10 +2318,20 @@ public class TestIndexWriter extends Luc
doc.add(newStringField("id", "xyz", Field.Store.YES));
writer.addDocument(doc);
assertTrue(writer.hasUncommittedChanges());
+
+ // Must commit, waitForMerges, commit again, to be
+ // certain that hasUncommittedChanges returns false:
+ writer.commit();
+ writer.waitForMerges();
writer.commit();
assertFalse(writer.hasUncommittedChanges());
writer.deleteDocuments(new Term("id", "xyz"));
assertTrue(writer.hasUncommittedChanges());
+
+ // Must commit, waitForMerges, commit again, to be
+ // certain that hasUncommittedChanges returns false:
+ writer.commit();
+ writer.waitForMerges();
writer.commit();
assertFalse(writer.hasUncommittedChanges());
writer.close();