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 2015/05/13 22:45:55 UTC
svn commit: r1679274 - in /lucene/dev/branches/branch_5x: ./ lucene/
lucene/core/
lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
Author: mikemccand
Date: Wed May 13 20:45:54 2015
New Revision: 1679274
URL: http://svn.apache.org/r1679274
Log:
add test case
Modified:
lucene/dev/branches/branch_5x/ (props changed)
lucene/dev/branches/branch_5x/lucene/ (props changed)
lucene/dev/branches/branch_5x/lucene/core/ (props changed)
lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
Modified: lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1679274&r1=1679273&r2=1679274&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java Wed May 13 20:45:54 2015
@@ -2615,5 +2615,35 @@ public class TestIndexWriter extends Luc
r.close();
d.close();
}
+
+ public void testManySeparateThreads() throws Exception {
+ Directory dir = newDirectory();
+ IndexWriterConfig iwc = new IndexWriterConfig(new MockAnalyzer(random()));
+ iwc.setMaxBufferedDocs(1000);
+ final IndexWriter w = new IndexWriter(dir, iwc);
+ // Index 100 docs, each from a new thread, but always only 1 thread is in IW at once:
+ for(int i=0;i<100;i++) {
+ Thread thread = new Thread() {
+ @Override
+ public void run() {
+ Document doc = new Document();
+ doc.add(newStringField("foo", "bar", Field.Store.NO));
+ try {
+ w.addDocument(doc);
+ } catch (IOException ioe) {
+ throw new RuntimeException(ioe);
+ }
+ }
+ };
+ thread.start();
+ thread.join();
+ }
+ w.close();
+
+ IndexReader r = DirectoryReader.open(dir);
+ assertEquals(1, r.leaves().size());
+ r.close();
+ dir.close();
+ }
}