You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2014/08/01 18:58:22 UTC
svn commit: r1615170 - in /lucene/dev/branches/branch_4x/lucene: ./
test-framework/
test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java
Author: rmuir
Date: Fri Aug 1 16:58:22 2014
New Revision: 1615170
URL: http://svn.apache.org/r1615170
Log:
beef up tests for docvalues merging
Modified:
lucene/dev/branches/branch_4x/lucene/ (props changed)
lucene/dev/branches/branch_4x/lucene/test-framework/ (props changed)
lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java?rev=1615170&r1=1615169&r2=1615170&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/index/BaseDocValuesFormatTestCase.java Fri Aug 1 16:58:22 2014
@@ -1435,10 +1435,23 @@ public abstract class BaseDocValuesForma
int id = random().nextInt(numDocs);
writer.deleteDocuments(new Term("id", Integer.toString(id)));
}
- writer.close();
// compare
- DirectoryReader ir = DirectoryReader.open(dir);
+ DirectoryReader ir = writer.getReader();
+ for (AtomicReaderContext context : ir.leaves()) {
+ AtomicReader r = context.reader();
+ BinaryDocValues docValues = r.getBinaryDocValues("dv");
+ for (int i = 0; i < r.maxDoc(); i++) {
+ BytesRef binaryValue = r.document(i).getBinaryValue("stored");
+ BytesRef scratch = docValues.get(i);
+ assertEquals(binaryValue, scratch);
+ }
+ }
+ ir.close();
+
+ // compare again
+ writer.forceMerge(1);
+ ir = writer.getReader();
for (AtomicReaderContext context : ir.leaves()) {
AtomicReader r = context.reader();
BinaryDocValues docValues = r.getBinaryDocValues("dv");
@@ -1449,6 +1462,7 @@ public abstract class BaseDocValuesForma
}
}
ir.close();
+ writer.close();
dir.close();
}
@@ -1505,10 +1519,23 @@ public abstract class BaseDocValuesForma
int id = random().nextInt(numDocs);
writer.deleteDocuments(new Term("id", Integer.toString(id)));
}
- writer.close();
// compare
- DirectoryReader ir = DirectoryReader.open(dir);
+ DirectoryReader ir = writer.getReader();
+ for (AtomicReaderContext context : ir.leaves()) {
+ AtomicReader r = context.reader();
+ BinaryDocValues docValues = r.getSortedDocValues("dv");
+ for (int i = 0; i < r.maxDoc(); i++) {
+ BytesRef binaryValue = r.document(i).getBinaryValue("stored");
+ BytesRef scratch = docValues.get(i);
+ assertEquals(binaryValue, scratch);
+ }
+ }
+ ir.close();
+ writer.forceMerge(1);
+
+ // compare again
+ ir = writer.getReader();
for (AtomicReaderContext context : ir.leaves()) {
AtomicReader r = context.reader();
BinaryDocValues docValues = r.getSortedDocValues("dv");
@@ -1519,6 +1546,7 @@ public abstract class BaseDocValuesForma
}
}
ir.close();
+ writer.close();
dir.close();
}
@@ -2043,7 +2071,7 @@ public abstract class BaseDocValuesForma
private void doTestSortedSetVsStoredFields(int minLength, int maxLength, int maxValuesPerDoc) throws Exception {
Directory dir = newDirectory();
- IndexWriterConfig conf = new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
+ IndexWriterConfig conf = newIndexWriterConfig(new MockAnalyzer(random()));
RandomIndexWriter writer = new RandomIndexWriter(random(), dir, conf);
// index some docs
@@ -2089,10 +2117,9 @@ public abstract class BaseDocValuesForma
int id = random().nextInt(numDocs);
writer.deleteDocuments(new Term("id", Integer.toString(id)));
}
- writer.close();
// compare
- DirectoryReader ir = DirectoryReader.open(dir);
+ DirectoryReader ir = writer.getReader();
for (AtomicReaderContext context : ir.leaves()) {
AtomicReader r = context.reader();
SortedSetDocValues docValues = r.getSortedSetDocValues("dv");
@@ -2112,6 +2139,30 @@ public abstract class BaseDocValuesForma
}
}
ir.close();
+ writer.forceMerge(1);
+
+ // compare again
+ ir = writer.getReader();
+ for (AtomicReaderContext context : ir.leaves()) {
+ AtomicReader r = context.reader();
+ SortedSetDocValues docValues = r.getSortedSetDocValues("dv");
+ for (int i = 0; i < r.maxDoc(); i++) {
+ String stringValues[] = r.document(i).getValues("stored");
+ if (docValues != null) {
+ docValues.setDocument(i);
+ }
+ for (int j = 0; j < stringValues.length; j++) {
+ assert docValues != null;
+ long ord = docValues.nextOrd();
+ assert ord != NO_MORE_ORDS;
+ BytesRef scratch = docValues.lookupOrd(ord);
+ assertEquals(stringValues[j], scratch.utf8ToString());
+ }
+ assert docValues == null || docValues.nextOrd() == NO_MORE_ORDS;
+ }
+ }
+ ir.close();
+ writer.close();
dir.close();
}