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 2011/03/25 18:33:09 UTC
svn commit: r1085482 - in /lucene/dev/trunk/lucene/src:
java/org/apache/lucene/index/IndexWriter.java
test/org/apache/lucene/index/TestGlobalFieldNumbers.java
Author: mikemccand
Date: Fri Mar 25 17:33:09 2011
New Revision: 1085482
URL: http://svn.apache.org/viewvc?rev=1085482&view=rev
Log:
LUCENE-2881: fix thread safety issue w/ test
Modified:
lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexWriter.java
lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestGlobalFieldNumbers.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=1085482&r1=1085481&r2=1085482&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 Fri Mar 25 17:33:09 2011
@@ -1378,6 +1378,11 @@ public class IndexWriter implements Clos
}
// for test purpose
+ final synchronized Collection<String> getIndexFileNames() throws IOException {
+ return segmentInfos.files(directory, true);
+ }
+
+ // for test purpose
final synchronized int getDocCount(int i) {
if (i >= 0 && i < segmentInfos.size()) {
return segmentInfos.info(i).docCount;
Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestGlobalFieldNumbers.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestGlobalFieldNumbers.java?rev=1085482&r1=1085481&r2=1085482&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestGlobalFieldNumbers.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestGlobalFieldNumbers.java Fri Mar 25 17:33:09 2011
@@ -54,12 +54,11 @@ public class TestGlobalFieldNumbers exte
d.add(new Field("f2", "d1 second field", Store.YES, Index.ANALYZED,
TermVector.NO));
writer.addDocument(d);
- Collection<String> files = writer.segmentInfos.files(dir, true);
- for (String string : files) {
+ for (String string : writer.getIndexFileNames()) {
assertFalse(string.endsWith(".fnx"));
}
writer.commit();
- files = writer.segmentInfos.files(dir, true);
+ Collection<String> files = writer.getIndexFileNames();
files.remove("1.fnx");
for (String string : files) {
assertFalse(string.endsWith(".fnx"));
@@ -72,7 +71,7 @@ public class TestGlobalFieldNumbers exte
d.add(new Field("f3", new byte[] { 1, 2, 3 }));
writer.addDocument(d);
writer.commit();
- files = writer.segmentInfos.files(dir, true);
+ files = writer.getIndexFileNames();
files.remove("2.fnx");
for (String string : files) {
assertFalse(string.endsWith(".fnx"));
@@ -93,7 +92,7 @@ public class TestGlobalFieldNumbers exte
d.add(new Field("f3", new byte[] { 1, 2, 3, 4, 5 }));
writer.addDocument(d);
writer.close();
- Collection<String> files = writer.segmentInfos.files(dir, true);
+ Collection<String> files = writer.getIndexFileNames();
files.remove("2.fnx");
for (String string : files) {
assertFalse(string.endsWith(".fnx"));
@@ -464,15 +463,14 @@ public class TestGlobalFieldNumbers exte
SegmentInfos segmentInfos = writer.segmentInfos;
assertTrue(DefaultSegmentInfosWriter.FORMAT_4_0 < segmentInfos.getFormat());
assertEquals(0, segmentInfos.getGlobalFieldMapVersion());
- Collection<String> files = segmentInfos.files(dir, true);
- for (String string : files) {
+ for (String string : writer.getIndexFileNames()) {
assertFalse(string.endsWith(".fnx"));
}
writer.commit();
assertTrue(DefaultSegmentInfosWriter.FORMAT_4_0 < segmentInfos.getFormat());
assertEquals(0, segmentInfos.getGlobalFieldMapVersion());
- files = segmentInfos.files(dir, true);
+ Collection<String> files = writer.getIndexFileNames();
for (String string : files) {
assertFalse(string.endsWith(".fnx"));
}
@@ -486,7 +484,7 @@ public class TestGlobalFieldNumbers exte
assertTrue(DefaultSegmentInfosWriter.FORMAT_4_0 < segmentInfos.getFormat());
assertEquals(0, segmentInfos.getLastGlobalFieldMapVersion());
assertEquals(1, segmentInfos.getGlobalFieldMapVersion());
- files = segmentInfos.files(dir, true);
+ files = writer.getIndexFileNames();
for (String string : files) {
assertFalse(string.endsWith(".fnx"));
}
@@ -497,7 +495,7 @@ public class TestGlobalFieldNumbers exte
assertTrue(DefaultSegmentInfosWriter.FORMAT_4_0 < segmentInfos.getFormat());
assertEquals(1, segmentInfos.getGlobalFieldMapVersion());
assertEquals(1, segmentInfos.getLastGlobalFieldMapVersion());
- files = segmentInfos.files(dir, true);
+ files = writer.getIndexFileNames();
assertTrue(files.remove("1.fnx"));
for (String string : files) {
assertFalse(string.endsWith(".fnx"));