You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2011/11/21 00:45:35 UTC
svn commit: r1204297 [6/10] - in /lucene/dev/branches/solrcloud: ./
dev-tools/eclipse/ dev-tools/idea/lucene/contrib/
dev-tools/idea/lucene/contrib/instantiated/ dev-tools/maven/lucene/contrib/
dev-tools/maven/lucene/contrib/instantiated/ lucene/ lucen...
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestCodecs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestCodecs.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestCodecs.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestCodecs.java Sun Nov 20 23:45:25 2011
@@ -249,7 +249,7 @@ public class TestCodecs extends LuceneTe
terms[i] = new TermData(text, docs, null);
}
- final FieldInfos fieldInfos = new FieldInfos();
+ final FieldInfos fieldInfos = new FieldInfos(new FieldInfos.FieldNumberBiMap());
final FieldData field = new FieldData("field", fieldInfos, terms, true, false);
final FieldData[] fields = new FieldData[] {field};
@@ -264,7 +264,10 @@ public class TestCodecs extends LuceneTe
final FieldsEnum fieldsEnum = reader.iterator();
assertNotNull(fieldsEnum.next());
- final TermsEnum termsEnum = fieldsEnum.terms();
+ final Terms terms2 = fieldsEnum.terms();
+ assertNotNull(terms2);
+
+ final TermsEnum termsEnum = terms2.iterator(null);
DocsEnum docsEnum = null;
for(int i=0;i<NUM_TERMS;i++) {
@@ -293,7 +296,7 @@ public class TestCodecs extends LuceneTe
}
public void testRandomPostings() throws Throwable {
- final FieldInfos fieldInfos = new FieldInfos();
+ final FieldInfos fieldInfos = new FieldInfos(new FieldInfos.FieldNumberBiMap());
final FieldData[] fields = new FieldData[NUM_FIELDS];
for(int i=0;i<NUM_FIELDS;i++) {
@@ -452,7 +455,7 @@ public class TestCodecs extends LuceneTe
for(int iter=0;iter<NUM_TEST_ITER;iter++) {
final FieldData field = fields[TestCodecs.random.nextInt(fields.length)];
- final TermsEnum termsEnum = termsDict.terms(field.fieldInfo.name).iterator();
+ final TermsEnum termsEnum = termsDict.terms(field.fieldInfo.name).iterator(null);
if (si.getCodec() instanceof Lucene3xCodec) {
// code below expects unicode sort order
continue;
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestConsistentFieldNumbers.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestConsistentFieldNumbers.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestConsistentFieldNumbers.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestConsistentFieldNumbers.java Sun Nov 20 23:45:25 2011
@@ -245,7 +245,7 @@ public class TestConsistentFieldNumbers
writer.deleteDocuments(new Term("f1", "d1"));
// nuke the first segment entirely so that the segment with gaps is
// loaded first!
- writer.expungeDeletes();
+ writer.forceMergeDeletes();
writer.close();
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java Sun Nov 20 23:45:25 2011
@@ -683,7 +683,8 @@ public class TestDeletionPolicy extends
assertEquals(2*(N+1)+1, policy.numOnInit);
assertEquals(2*(N+2) - (wasFullyMerged ? 1:0), policy.numOnCommit);
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader rwReader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(rwReader);
ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;
assertEquals(176, hits.length);
@@ -694,6 +695,7 @@ public class TestDeletionPolicy extends
dir.deleteFile(IndexFileNames.SEGMENTS_GEN);
int expectedCount = 176;
searcher.close();
+ rwReader.close();
for(int i=0;i<N+1;i++) {
if (VERBOSE) {
System.out.println("TEST: i=" + i);
@@ -801,7 +803,8 @@ public class TestDeletionPolicy extends
assertEquals(3*(N+1), policy.numOnInit);
assertEquals(3*(N+1)+1, policy.numOnCommit);
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader rwReader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(rwReader);
ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;
assertEquals(0, hits.length);
@@ -811,6 +814,9 @@ public class TestDeletionPolicy extends
dir.deleteFile(IndexFileNames.SEGMENTS_GEN);
int expectedCount = 0;
+
+ searcher.close();
+ rwReader.close();
for(int i=0;i<N+1;i++) {
try {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDirectoryReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDirectoryReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDirectoryReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDirectoryReader.java Sun Nov 20 23:45:25 2011
@@ -85,8 +85,8 @@ public class TestDirectoryReader extends
Document newDoc2 = reader.document(1);
assertTrue(newDoc2 != null);
assertTrue(DocHelper.numFields(newDoc2) == DocHelper.numFields(doc2) - DocHelper.unstored.size());
- TermFreqVector vector = reader.getTermFreqVector(0, DocHelper.TEXT_FIELD_2_KEY);
- assertTrue(vector != null);
+ Terms vector = reader.getTermVectors(0).terms(DocHelper.TEXT_FIELD_2_KEY);
+ assertNotNull(vector);
TestSegmentReader.checkNorms(reader);
reader.close();
}
@@ -165,14 +165,14 @@ public class TestDirectoryReader extends
MultiReader mr3 = new MultiReader(readers2);
// test mixing up TermDocs and TermEnums from different readers.
- TermsEnum te2 = MultiFields.getTerms(mr2, "body").iterator();
+ TermsEnum te2 = MultiFields.getTerms(mr2, "body").iterator(null);
te2.seekCeil(new BytesRef("wow"));
DocsEnum td = MultiFields.getTermDocsEnum(mr2,
MultiFields.getLiveDocs(mr2),
"body",
te2.term());
- TermsEnum te3 = MultiFields.getTerms(mr3, "body").iterator();
+ TermsEnum te3 = MultiFields.getTerms(mr3, "body").iterator(null);
te3.seekCeil(new BytesRef("wow"));
td = te3.docs(MultiFields.getLiveDocs(mr3),
td);
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDoc.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDoc.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDoc.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDoc.java Sun Nov 20 23:45:25 2011
@@ -130,13 +130,13 @@ public class TestDoc extends LuceneTestC
printSegment(out, si2);
writer.close();
- SegmentInfo siMerge = merge(si1, si2, "merge", false);
+ SegmentInfo siMerge = merge(directory, si1, si2, "merge", false);
printSegment(out, siMerge);
- SegmentInfo siMerge2 = merge(si1, si2, "merge2", false);
+ SegmentInfo siMerge2 = merge(directory, si1, si2, "merge2", false);
printSegment(out, siMerge2);
- SegmentInfo siMerge3 = merge(siMerge, siMerge2, "merge3", false);
+ SegmentInfo siMerge3 = merge(directory, siMerge, siMerge2, "merge3", false);
printSegment(out, siMerge3);
directory.close();
@@ -164,13 +164,13 @@ public class TestDoc extends LuceneTestC
printSegment(out, si2);
writer.close();
- siMerge = merge(si1, si2, "merge", true);
+ siMerge = merge(directory, si1, si2, "merge", true);
printSegment(out, siMerge);
- siMerge2 = merge(si1, si2, "merge2", true);
+ siMerge2 = merge(directory, si1, si2, "merge2", true);
printSegment(out, siMerge2);
- siMerge3 = merge(siMerge, siMerge2, "merge3", true);
+ siMerge3 = merge(directory, siMerge, siMerge2, "merge3", true);
printSegment(out, siMerge3);
directory.close();
@@ -193,14 +193,14 @@ public class TestDoc extends LuceneTestC
}
- private SegmentInfo merge(SegmentInfo si1, SegmentInfo si2, String merged, boolean useCompoundFile)
+ private SegmentInfo merge(Directory dir, SegmentInfo si1, SegmentInfo si2, String merged, boolean useCompoundFile)
throws Exception {
IOContext context = newIOContext(random);
SegmentReader r1 = SegmentReader.get(true, si1, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR, context);
SegmentReader r2 = SegmentReader.get(true, si2, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR, context);
final Codec codec = Codec.getDefault();
- SegmentMerger merger = new SegmentMerger(InfoStream.getDefault(), si1.dir, IndexWriterConfig.DEFAULT_TERM_INDEX_INTERVAL, merged, MergeState.CheckAbort.NONE, null, new FieldInfos(), codec, context);
+ SegmentMerger merger = new SegmentMerger(InfoStream.getDefault(), si1.dir, IndexWriterConfig.DEFAULT_TERM_INDEX_INTERVAL, merged, MergeState.CheckAbort.NONE, null, new FieldInfos(new FieldInfos.FieldNumberBiMap()), codec, context);
merger.add(r1);
merger.add(r2);
@@ -212,7 +212,7 @@ public class TestDoc extends LuceneTestC
false, codec, fieldInfos);
if (useCompoundFile) {
- Collection<String> filesToDelete = merger.createCompoundFile(merged + ".cfs", info, newIOContext(random));
+ Collection<String> filesToDelete = IndexWriter.createCompoundFile(dir, merged + ".cfs", MergeState.CheckAbort.NONE, info, newIOContext(random));
info.setUseCompoundFile(true);
for (final String fileToDelete : filesToDelete)
si1.dir.deleteFile(fileToDelete);
@@ -232,7 +232,9 @@ public class TestDoc extends LuceneTestC
FieldsEnum fis = reader.fields().iterator();
String field = fis.next();
while(field != null) {
- TermsEnum tis = fis.terms();
+ Terms terms = fis.terms();
+ assertNotNull(terms);
+ TermsEnum tis = terms.iterator(null);
while(tis.next() != null) {
out.print(" term=" + field + ":" + tis.term());
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocCount.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocCount.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocCount.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocCount.java Sun Nov 20 23:45:25 2011
@@ -70,7 +70,7 @@ public class TestDocCount extends Lucene
Terms terms = fields.terms(field);
int docCount = terms.getDocCount();
FixedBitSet visited = new FixedBitSet(ir.maxDoc());
- TermsEnum te = terms.iterator();
+ TermsEnum te = terms.iterator(null);
while (te.next() != null) {
DocsEnum de = te.docs(null, null);
while (de.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocTermOrds.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocTermOrds.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocTermOrds.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocTermOrds.java Sun Nov 20 23:45:25 2011
@@ -314,7 +314,7 @@ public class TestDocTermOrds extends Luc
if (VERBOSE) {
System.out.println("TEST: verify prefix=" + (prefixRef==null ? "null" : prefixRef.utf8ToString()));
System.out.println("TEST: all TERMS:");
- TermsEnum allTE = MultiFields.getTerms(r, "field").iterator();
+ TermsEnum allTE = MultiFields.getTerms(r, "field").iterator(null);
int ord = 0;
while(allTE.next() != null) {
System.out.println(" ord=" + (ord++) + " term=" + allTE.term().utf8ToString());
@@ -329,7 +329,7 @@ public class TestDocTermOrds extends Luc
} else {
Terms terms = MultiFields.getTerms(r, "field");
if (terms != null) {
- TermsEnum termsEnum = terms.iterator();
+ TermsEnum termsEnum = terms.iterator(null);
TermsEnum.SeekStatus result = termsEnum.seekCeil(prefixRef, false);
if (result != TermsEnum.SeekStatus.END) {
assertFalse("term=" + termsEnum.term().utf8ToString() + " matches prefix=" + prefixRef.utf8ToString(), termsEnum.term().startsWith(prefixRef));
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocsAndPositions.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocsAndPositions.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocsAndPositions.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocsAndPositions.java Sun Nov 20 23:45:25 2011
@@ -22,10 +22,13 @@ import java.util.Arrays;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
+import org.apache.lucene.document.Field;
import org.apache.lucene.document.FieldType;
+import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
import org.apache.lucene.index.IndexReader.ReaderContext;
+import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.store.Directory;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
@@ -331,5 +334,54 @@ public class TestDocsAndPositions extend
reader.close();
dir.close();
}
-
+
+ public void testDocsEnumStart() throws Exception {
+ Directory dir = newDirectory();
+ RandomIndexWriter writer = new RandomIndexWriter(random, dir);
+ Document doc = new Document();
+ doc.add(newField("foo", "bar", StringField.TYPE_UNSTORED));
+ writer.addDocument(doc);
+ IndexReader reader = writer.getReader();
+ IndexReader r = getOnlySegmentReader(reader);
+ DocsEnum disi = r.termDocsEnum(null, "foo", new BytesRef("bar"));
+ int docid = disi.docID();
+ assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+
+ // now reuse and check again
+ TermsEnum te = r.terms("foo").iterator(null);
+ assertTrue(te.seekExact(new BytesRef("bar"), true));
+ disi = te.docs(null, disi);
+ docid = disi.docID();
+ assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ writer.close();
+ r.close();
+ dir.close();
+ }
+
+ public void testDocsAndPositionsEnumStart() throws Exception {
+ Directory dir = newDirectory();
+ RandomIndexWriter writer = new RandomIndexWriter(random, dir);
+ Document doc = new Document();
+ doc.add(newField("foo", "bar", TextField.TYPE_UNSTORED));
+ writer.addDocument(doc);
+ IndexReader reader = writer.getReader();
+ IndexReader r = getOnlySegmentReader(reader);
+ DocsAndPositionsEnum disi = r.termPositionsEnum(null, "foo", new BytesRef("bar"));
+ int docid = disi.docID();
+ assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+
+ // now reuse and check again
+ TermsEnum te = r.terms("foo").iterator(null);
+ assertTrue(te.seekExact(new BytesRef("bar"), true));
+ disi = te.docsAndPositions(null, disi);
+ docid = disi.docID();
+ assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ writer.close();
+ r.close();
+ dir.close();
+ }
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocumentWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocumentWriter.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocumentWriter.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestDocumentWriter.java Sun Nov 20 23:45:25 2011
@@ -199,7 +199,7 @@ public class TestDocumentWriter extends
writer.close();
SegmentReader reader = SegmentReader.get(true, info, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR, newIOContext(random));
- DocsAndPositionsEnum termPositions = reader.fields().terms("f1").docsAndPositions(reader.getLiveDocs(), new BytesRef("a"), null);
+ DocsAndPositionsEnum termPositions = MultiFields.getTermPositionsEnum(reader, reader.getLiveDocs(), "f1", new BytesRef("a"));
assertTrue(termPositions.nextDoc() != termPositions.NO_MORE_DOCS);
int freq = termPositions.freq();
assertEquals(3, freq);
@@ -243,18 +243,18 @@ public class TestDocumentWriter extends
writer.close();
SegmentReader reader = SegmentReader.get(true, info, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR, newIOContext(random));
- DocsAndPositionsEnum termPositions = reader.fields().terms("preanalyzed").docsAndPositions(reader.getLiveDocs(), new BytesRef("term1"), null);
+ DocsAndPositionsEnum termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term1"));
assertTrue(termPositions.nextDoc() != termPositions.NO_MORE_DOCS);
assertEquals(1, termPositions.freq());
assertEquals(0, termPositions.nextPosition());
- termPositions = reader.fields().terms("preanalyzed").docsAndPositions(reader.getLiveDocs(), new BytesRef("term2"), null);
+ termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term2"));
assertTrue(termPositions.nextDoc() != termPositions.NO_MORE_DOCS);
assertEquals(2, termPositions.freq());
assertEquals(1, termPositions.nextPosition());
assertEquals(3, termPositions.nextPosition());
- termPositions = reader.fields().terms("preanalyzed").docsAndPositions(reader.getLiveDocs(), new BytesRef("term3"), null);
+ termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term3"));
assertTrue(termPositions.nextDoc() != termPositions.NO_MORE_DOCS);
assertEquals(1, termPositions.freq());
assertEquals(2, termPositions.nextPosition());
@@ -287,13 +287,13 @@ public class TestDocumentWriter extends
IndexReader reader = IndexReader.open(dir, true);
// f1
- TermFreqVector tfv1 = reader.getTermFreqVector(0, "f1");
+ Terms tfv1 = reader.getTermVectors(0).terms("f1");
assertNotNull(tfv1);
- assertEquals("the 'with_tv' setting should rule!",2,tfv1.getTerms().length);
+ assertEquals("the 'with_tv' setting should rule!",2,tfv1.getUniqueTermCount());
// f2
- TermFreqVector tfv2 = reader.getTermFreqVector(0, "f2");
+ Terms tfv2 = reader.getTermVectors(0).terms("f2");
assertNotNull(tfv2);
- assertEquals("the 'with_tv' setting should rule!",2,tfv2.getTerms().length);
+ assertEquals("the 'with_tv' setting should rule!",2,tfv2.getUniqueTermCount());
reader.close();
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldInfos.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldInfos.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldInfos.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldInfos.java Sun Nov 20 23:45:25 2011
@@ -21,8 +21,13 @@ import org.apache.lucene.util.LuceneTest
import org.apache.lucene.util._TestUtil;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.FieldInfo.IndexOptions;
+import org.apache.lucene.index.codecs.Codec;
+import org.apache.lucene.index.codecs.FieldInfosReader;
+import org.apache.lucene.index.codecs.FieldInfosWriter;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IOContext;
import org.apache.lucene.store.IndexOutput;
+import org.junit.Ignore;
import java.io.IOException;
import java.util.Arrays;
@@ -42,7 +47,7 @@ public class TestFieldInfos extends Luce
public FieldInfos createAndWriteFieldInfos(Directory dir, String filename) throws IOException{
//Positive test of FieldInfos
assertTrue(testDoc != null);
- FieldInfos fieldInfos = new FieldInfos();
+ FieldInfos fieldInfos = new FieldInfos(new FieldInfos.FieldNumberBiMap());
_TestUtil.add(testDoc, fieldInfos);
//Since the complement is stored as well in the fields map
assertTrue(fieldInfos.size() == DocHelper.all.size()); //this is all b/c we are using the no-arg constructor
@@ -52,16 +57,23 @@ public class TestFieldInfos extends Luce
assertTrue(output != null);
//Use a RAMOutputStream
- fieldInfos.write(output);
+ FieldInfosWriter writer = Codec.getDefault().fieldInfosFormat().getFieldInfosWriter();
+ writer.write(dir, filename, fieldInfos, IOContext.DEFAULT);
output.close();
return fieldInfos;
}
+
+ public FieldInfos readFieldInfos(Directory dir, String filename) throws IOException {
+ FieldInfosReader reader = Codec.getDefault().fieldInfosFormat().getFieldInfosReader();
+ return reader.read(dir, filename, IOContext.DEFAULT);
+ }
+
public void test() throws IOException {
String name = "testFile";
Directory dir = newDirectory();
FieldInfos fieldInfos = createAndWriteFieldInfos(dir, name);
- assertTrue(dir.fileLength(name) > 0);
- FieldInfos readIn = new FieldInfos(dir, name);
+
+ FieldInfos readIn = readFieldInfos(dir, name);
assertTrue(fieldInfos.size() == readIn.size());
FieldInfo info = readIn.fieldInfo("textField1");
assertTrue(info != null);
@@ -90,7 +102,7 @@ public class TestFieldInfos extends Luce
String name = "testFile";
Directory dir = newDirectory();
FieldInfos fieldInfos = createAndWriteFieldInfos(dir, name);
- FieldInfos readOnly = new FieldInfos(dir, name);
+ FieldInfos readOnly = readFieldInfos(dir, name);
assertReadOnly(readOnly, fieldInfos);
FieldInfos readOnlyClone = (FieldInfos)readOnly.clone();
assertNotSame(readOnly, readOnlyClone);
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldsReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldsReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldsReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFieldsReader.java Sun Nov 20 23:45:25 2011
@@ -48,7 +48,7 @@ public class TestFieldsReader extends Lu
@BeforeClass
public static void beforeClass() throws Exception {
- fieldInfos = new FieldInfos();
+ fieldInfos = new FieldInfos(new FieldInfos.FieldNumberBiMap());
DocHelper.setupDoc(testDoc);
_TestUtil.add(testDoc, fieldInfos);
dir = newDirectory();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFilterIndexReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFilterIndexReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFilterIndexReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFilterIndexReader.java Sun Nov 20 23:45:25 2011
@@ -54,8 +54,8 @@ public class TestFilterIndexReader exten
}
@Override
- public TermsEnum iterator() throws IOException {
- return new TestTermsEnum(super.iterator());
+ public TermsEnum iterator(TermsEnum reuse) throws IOException {
+ return new TestTermsEnum(super.iterator(reuse));
}
}
@@ -65,8 +65,8 @@ public class TestFilterIndexReader exten
}
@Override
- public TermsEnum terms() throws IOException {
- return new TestTermsEnum(super.terms());
+ public Terms terms() throws IOException {
+ return new TestTerms(super.terms());
}
}
@@ -150,7 +150,7 @@ public class TestFilterIndexReader exten
reader.close();
reader = IndexReader.open(target, true);
- TermsEnum terms = MultiFields.getTerms(reader, "default").iterator();
+ TermsEnum terms = MultiFields.getTerms(reader, "default").iterator(null);
while (terms.next() != null) {
assertTrue(terms.term().utf8ToString().indexOf('e') != -1);
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFlex.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFlex.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFlex.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestFlex.java Sun Nov 20 23:45:25 2011
@@ -53,7 +53,7 @@ public class TestFlex extends LuceneTest
IndexReader r = w.getReader();
- TermsEnum terms = MultiFields.getTerms(r, "field3").iterator();
+ TermsEnum terms = MultiFields.getTerms(r, "field3").iterator(null);
assertEquals(TermsEnum.SeekStatus.END, terms.seekCeil(new BytesRef("abc")));
r.close();
}
@@ -70,7 +70,7 @@ public class TestFlex extends LuceneTest
doc.add(newField("f", "a b c", TextField.TYPE_UNSTORED));
w.addDocument(doc);
IndexReader r = w.getReader();
- TermsEnum terms = r.getSequentialSubReaders()[0].fields().terms("f").iterator();
+ TermsEnum terms = r.getSequentialSubReaders()[0].fields().terms("f").iterator(null);
assertTrue(terms.next() != null);
try {
assertEquals(0, terms.ord());
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java Sun Nov 20 23:45:25 2011
@@ -25,9 +25,12 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
+import org.apache.lucene.index.codecs.Codec;
+import org.apache.lucene.index.codecs.FieldInfosReader;
import org.apache.lucene.search.similarities.DefaultSimilarity;
import org.apache.lucene.store.CompoundFileDirectory;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IOContext;
import org.apache.lucene.store.IndexInput;
import org.apache.lucene.store.IndexOutput;
import org.apache.lucene.store.MockDirectoryWrapper;
@@ -91,7 +94,8 @@ public class TestIndexFileDeleter extend
// "content", and then set our expected file names below
// accordingly:
CompoundFileDirectory cfsReader = new CompoundFileDirectory(dir, "_2.cfs", newIOContext(random), false);
- FieldInfos fieldInfos = new FieldInfos(cfsReader, "_2.fnm");
+ FieldInfosReader infosReader = Codec.getDefault().fieldInfosFormat().getFieldInfosReader();
+ FieldInfos fieldInfos = infosReader.read(cfsReader, "2", IOContext.READONCE);
int contentFieldIndex = -1;
for (FieldInfo fi : fieldInfos) {
if (fi.name.equals("content")) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexReader.java Sun Nov 20 23:45:25 2011
@@ -28,8 +28,6 @@ import java.util.List;
import java.util.Map;
import java.util.HashMap;
import java.util.Random;
-import java.util.Set;
-import java.util.SortedSet;
import org.junit.Assume;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.BinaryField;
@@ -314,19 +312,6 @@ public class TestIndexReader extends Luc
writer.addDocument(doc);
}
writer.close();
- IndexReader reader = IndexReader.open(d, false);
- FieldSortedTermVectorMapper mapper = new FieldSortedTermVectorMapper(new TermVectorEntryFreqSortedComparator());
- reader.getTermFreqVector(0, mapper);
- Map<String,SortedSet<TermVectorEntry>> map = mapper.getFieldToTerms();
- assertTrue("map is null and it shouldn't be", map != null);
- assertTrue("map Size: " + map.size() + " is not: " + 4, map.size() == 4);
- Set<TermVectorEntry> set = map.get("termvector");
- for (Iterator<TermVectorEntry> iterator = set.iterator(); iterator.hasNext();) {
- TermVectorEntry entry = iterator.next();
- assertTrue("entry is null and it shouldn't be", entry != null);
- if (VERBOSE) System.out.println("Entry: " + entry);
- }
- reader.close();
d.close();
}
@@ -914,8 +899,17 @@ public class TestIndexReader extends Luc
Bits liveDocs = MultiFields.getLiveDocs(index1);
while((field1=fenum1.next()) != null) {
assertEquals("Different fields", field1, fenum2.next());
- TermsEnum enum1 = fenum1.terms();
- TermsEnum enum2 = fenum2.terms();
+ Terms terms1 = fenum1.terms();
+ if (terms1 == null) {
+ assertNull(fenum2.terms());
+ continue;
+ }
+ TermsEnum enum1 = terms1.iterator(null);
+
+ Terms terms2 = fenum2.terms();
+ assertNotNull(terms2);
+ TermsEnum enum2 = terms2.iterator(null);
+
while(enum1.next() != null) {
assertEquals("Different terms", enum1.term(), enum2.next());
DocsAndPositionsEnum tp1 = enum1.docsAndPositions(liveDocs, null);
@@ -1346,13 +1340,12 @@ public class TestIndexReader extends Luc
writer.addDocument(d);
IndexReader r = writer.getReader();
writer.close();
- Terms terms = MultiFields.getTerms(r, "f");
try {
// Make sure codec impls totalTermFreq (eg PreFlex doesn't)
- Assume.assumeTrue(terms.totalTermFreq(new BytesRef("b")) != -1);
- assertEquals(1, terms.totalTermFreq(new BytesRef("b")));
- assertEquals(2, terms.totalTermFreq(new BytesRef("a")));
- assertEquals(1, terms.totalTermFreq(new BytesRef("b")));
+ Assume.assumeTrue(MultiFields.totalTermFreq(r, "f", new BytesRef("b")) != -1);
+ assertEquals(1, MultiFields.totalTermFreq(r, "f", new BytesRef("b")));
+ assertEquals(2, MultiFields.totalTermFreq(r, "f", new BytesRef("a")));
+ assertEquals(1, MultiFields.totalTermFreq(r, "f", new BytesRef("b")));
} finally {
r.close();
dir.close();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java Sun Nov 20 23:45:25 2011
@@ -25,10 +25,12 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Random;
+import java.util.Set;
import org.apache.lucene.analysis.*;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
@@ -41,6 +43,7 @@ import org.apache.lucene.document.String
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
import org.apache.lucene.index.codecs.Codec;
+import org.apache.lucene.index.codecs.DefaultTermVectorsReader;
import org.apache.lucene.index.codecs.simpletext.SimpleTextCodec;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.search.FieldCache;
@@ -452,10 +455,12 @@ public class TestIndexWriter extends Luc
}
writer.close();
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader reader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(reader);
ScoreDoc[] hits = searcher.search(new TermQuery(new Term("field", "aaa")), null, 1000).scoreDocs;
assertEquals(300, hits.length);
searcher.close();
+ reader.close();
dir.close();
}
@@ -482,10 +487,12 @@ public class TestIndexWriter extends Luc
Term searchTerm = new Term("field", "aaa");
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader reader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(reader);
ScoreDoc[] hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals(10, hits.length);
searcher.close();
+ reader.close();
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random))
.setOpenMode(OpenMode.CREATE).setMaxBufferedDocs(10));
@@ -503,12 +510,14 @@ public class TestIndexWriter extends Luc
writer.addDocument(doc);
}
writer.close();
- searcher = new IndexSearcher(dir, false);
+ reader = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(reader);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals(27, hits.length);
searcher.close();
+ reader.close();
- IndexReader reader = IndexReader.open(dir, true);
+ reader = IndexReader.open(dir, true);
reader.close();
dir.close();
@@ -578,15 +587,16 @@ public class TestIndexWriter extends Luc
}
writer.close();
Term searchTerm = new Term("content", "aaa");
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader reader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(reader);
ScoreDoc[] hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("did not get right number of hits", 100, hits.length);
searcher.close();
+ reader.close();
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random))
.setOpenMode(OpenMode.CREATE));
writer.close();
- searcher.close();
dir.close();
}
@@ -878,7 +888,7 @@ public class TestIndexWriter extends Luc
writer.close();
IndexReader reader = IndexReader.open(dir, true);
IndexReader subreader = getOnlySegmentReader(reader);
- TermsEnum te = subreader.fields().terms("").iterator();
+ TermsEnum te = subreader.fields().terms("").iterator(null);
assertEquals(new BytesRef("a"), te.next());
assertEquals(new BytesRef("b"), te.next());
assertEquals(new BytesRef("c"), te.next());
@@ -899,7 +909,7 @@ public class TestIndexWriter extends Luc
writer.close();
IndexReader reader = IndexReader.open(dir, true);
IndexReader subreader = getOnlySegmentReader(reader);
- TermsEnum te = subreader.fields().terms("").iterator();
+ TermsEnum te = subreader.fields().terms("").iterator(null);
assertEquals(new BytesRef(""), te.next());
assertEquals(new BytesRef("a"), te.next());
assertEquals(new BytesRef("b"), te.next());
@@ -985,7 +995,8 @@ public class TestIndexWriter extends Luc
w.addDocument(doc);
w.commit();
- IndexSearcher s = new IndexSearcher(dir, false);
+ IndexReader r = IndexReader.open(dir, false);
+ IndexSearcher s = new IndexSearcher(r);
PhraseQuery pq = new PhraseQuery();
pq.add(new Term("field", "a"));
pq.add(new Term("field", "b"));
@@ -1008,6 +1019,7 @@ public class TestIndexWriter extends Luc
w.close();
s.close();
+ r.close();
dir.close();
}
@@ -1062,13 +1074,23 @@ public class TestIndexWriter extends Luc
w.close();
IndexReader r = IndexReader.open(dir, true);
- TermPositionVector tpv = ((TermPositionVector) r.getTermFreqVector(0, "field"));
- int[] poss = tpv.getTermPositions(0);
- assertEquals(1, poss.length);
- assertEquals(100, poss[0]);
- poss = tpv.getTermPositions(1);
- assertEquals(1, poss.length);
- assertEquals(101, poss[0]);
+ Terms tpv = r.getTermVectors(0).terms("field");
+ TermsEnum termsEnum = tpv.iterator(null);
+ assertNotNull(termsEnum.next());
+ DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
+ assertNotNull(dpEnum);
+ assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
+ assertEquals(1, dpEnum.freq());
+ assertEquals(100, dpEnum.nextPosition());
+
+ assertNotNull(termsEnum.next());
+ dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+ assertNotNull(dpEnum);
+ assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
+ assertEquals(1, dpEnum.freq());
+ assertEquals(101, dpEnum.nextPosition());
+ assertNull(termsEnum.next());
+
r.close();
dir.close();
}
@@ -1393,7 +1415,7 @@ public class TestIndexWriter extends Luc
w.addDocument(d);
IndexReader r = w.getReader().getSequentialSubReaders()[0];
- TermsEnum t = r.fields().terms("field").iterator();
+ TermsEnum t = r.fields().terms("field").iterator(null);
int count = 0;
while(t.next() != null) {
final DocsEnum docs = t.docs(null, null);
@@ -1731,13 +1753,16 @@ public class TestIndexWriter extends Luc
_TestUtil.checkIndex(dir);
assertNoUnreferencedFiles(dir, "no tv files");
- String[] files = dir.listAll();
- for(String file : files) {
- assertTrue(!file.endsWith(IndexFileNames.VECTORS_FIELDS_EXTENSION));
- assertTrue(!file.endsWith(IndexFileNames.VECTORS_INDEX_EXTENSION));
- assertTrue(!file.endsWith(IndexFileNames.VECTORS_DOCUMENTS_EXTENSION));
+ IndexReader r0 = IndexReader.open(dir);
+ for (IndexReader r : r0.getSequentialSubReaders()) {
+ SegmentInfo s = ((SegmentReader) r).getSegmentInfo();
+ assertFalse(s.getHasVectors());
+ Set<String> files = new HashSet<String>();
+ s.getCodec().termVectorsFormat().files(dir, s, files);
+ assertTrue(files.isEmpty());
}
-
+
+ r0.close();
dir.close();
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterCommit.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterCommit.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterCommit.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterCommit.java Sun Nov 20 23:45:25 2011
@@ -51,22 +51,26 @@ public class TestIndexWriterCommit exten
writer.close();
Term searchTerm = new Term("content", "aaa");
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader reader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(reader);
ScoreDoc[] hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("first number of hits", 14, hits.length);
searcher.close();
+ reader.close();
- IndexReader reader = IndexReader.open(dir, true);
+ reader = IndexReader.open(dir, true);
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)));
for(int i=0;i<3;i++) {
for(int j=0;j<11;j++) {
TestIndexWriter.addDoc(writer);
}
- searcher = new IndexSearcher(dir, false);
+ IndexReader r = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(r);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("reader incorrectly sees changes from writer", 14, hits.length);
searcher.close();
+ r.close();
assertTrue("reader should have still been current", reader.isCurrent());
}
@@ -74,10 +78,12 @@ public class TestIndexWriterCommit exten
writer.close();
assertFalse("reader should not be current now", reader.isCurrent());
- searcher = new IndexSearcher(dir, false);
+ IndexReader r = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(r);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("reader did not see changes after writer was closed", 47, hits.length);
searcher.close();
+ r.close();
reader.close();
dir.close();
}
@@ -99,10 +105,12 @@ public class TestIndexWriterCommit exten
writer.close();
Term searchTerm = new Term("content", "aaa");
- IndexSearcher searcher = new IndexSearcher(dir, false);
+ IndexReader reader = IndexReader.open(dir, false);
+ IndexSearcher searcher = new IndexSearcher(reader);
ScoreDoc[] hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("first number of hits", 14, hits.length);
searcher.close();
+ reader.close();
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random))
.setOpenMode(OpenMode.APPEND).setMaxBufferedDocs(10));
@@ -112,20 +120,24 @@ public class TestIndexWriterCommit exten
// Delete all docs:
writer.deleteDocuments(searchTerm);
- searcher = new IndexSearcher(dir, false);
+ reader = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(reader);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("reader incorrectly sees changes from writer", 14, hits.length);
searcher.close();
+ reader.close();
// Now, close the writer:
writer.rollback();
TestIndexWriter.assertNoUnreferencedFiles(dir, "unreferenced files remain after rollback()");
- searcher = new IndexSearcher(dir, false);
+ reader = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(reader);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("saw changes after writer.abort", 14, hits.length);
searcher.close();
+ reader.close();
// Now make sure we can re-open the index, add docs,
// and all is good:
@@ -140,17 +152,21 @@ public class TestIndexWriterCommit exten
for(int j=0;j<17;j++) {
TestIndexWriter.addDoc(writer);
}
- searcher = new IndexSearcher(dir, false);
+ IndexReader r = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(r);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("reader incorrectly sees changes from writer", 14, hits.length);
searcher.close();
+ r.close();
}
writer.close();
- searcher = new IndexSearcher(dir, false);
+ IndexReader r = IndexReader.open(dir, false);
+ searcher = new IndexSearcher(r);
hits = searcher.search(new TermQuery(searchTerm), null, 1000).scoreDocs;
assertEquals("didn't see changes after close", 218, hits.length);
searcher.close();
+ r.close();
dir.close();
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java Sun Nov 20 23:45:25 2011
@@ -400,9 +400,11 @@ public class TestIndexWriterDelete exten
}
private int getHitCount(Directory dir, Term term) throws IOException {
- IndexSearcher searcher = new IndexSearcher(dir, true);
+ IndexReader reader = IndexReader.open(dir);
+ IndexSearcher searcher = new IndexSearcher(reader);
int hitCount = searcher.search(new TermQuery(term), null, 1000).totalHits;
searcher.close();
+ reader.close();
return hitCount;
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java Sun Nov 20 23:45:25 2011
@@ -535,7 +535,7 @@ public class TestIndexWriterExceptions e
boolean sawAppend = false;
boolean sawFlush = false;
for (int i = 0; i < trace.length; i++) {
- if ("org.apache.lucene.index.FreqProxTermsWriterPerField".equals(trace[i].getClassName()) && "flush".equals(trace[i].getMethodName()))
+ if (FreqProxTermsWriterPerField.class.getName().equals(trace[i].getClassName()) && "flush".equals(trace[i].getMethodName()))
sawAppend = true;
if ("flush".equals(trace[i].getMethodName()))
sawFlush = true;
@@ -641,7 +641,7 @@ public class TestIndexWriterExceptions e
numDel++;
else {
reader.document(j);
- reader.getTermFreqVectors(j);
+ reader.getTermVectors(j);
}
}
assertEquals(1, numDel);
@@ -665,7 +665,7 @@ public class TestIndexWriterExceptions e
assertNull(MultiFields.getLiveDocs(reader));
for(int j=0;j<reader.maxDoc();j++) {
reader.document(j);
- reader.getTermFreqVectors(j);
+ reader.getTermVectors(j);
}
reader.close();
assertEquals(0, numDel);
@@ -755,7 +755,7 @@ public class TestIndexWriterExceptions e
numDel++;
else {
reader.document(j);
- reader.getTermFreqVectors(j);
+ reader.getTermVectors(j);
}
}
reader.close();
@@ -778,7 +778,7 @@ public class TestIndexWriterExceptions e
assertNull(MultiFields.getLiveDocs(reader));
for(int j=0;j<reader.maxDoc();j++) {
reader.document(j);
- reader.getTermFreqVectors(j);
+ reader.getTermVectors(j);
}
reader.close();
@@ -794,7 +794,7 @@ public class TestIndexWriterExceptions e
if (doFail) {
StackTraceElement[] trace = new Exception().getStackTrace();
for (int i = 0; i < trace.length; i++) {
- if (doFail && "org.apache.lucene.store.MockDirectoryWrapper".equals(trace[i].getClassName()) && "sync".equals(trace[i].getMethodName())) {
+ if (doFail && MockDirectoryWrapper.class.getName().equals(trace[i].getClassName()) && "sync".equals(trace[i].getMethodName())) {
didFail = true;
throw new IOException("now failing on purpose during sync");
}
@@ -868,11 +868,11 @@ public class TestIndexWriterExceptions e
boolean isDelete = false;
boolean isInGlobalFieldMap = false;
for (int i = 0; i < trace.length; i++) {
- if ("org.apache.lucene.index.SegmentInfos".equals(trace[i].getClassName()) && stage.equals(trace[i].getMethodName()))
+ if (SegmentInfos.class.getName().equals(trace[i].getClassName()) && stage.equals(trace[i].getMethodName()))
isCommit = true;
- if ("org.apache.lucene.store.MockDirectoryWrapper".equals(trace[i].getClassName()) && "deleteFile".equals(trace[i].getMethodName()))
+ if (MockDirectoryWrapper.class.getName().equals(trace[i].getClassName()) && "deleteFile".equals(trace[i].getMethodName()))
isDelete = true;
- if ("org.apache.lucene.index.SegmentInfos".equals(trace[i].getClassName()) && "writeGlobalFieldMap".equals(trace[i].getMethodName()))
+ if (SegmentInfos.class.getName().equals(trace[i].getClassName()) && "writeGlobalFieldMap".equals(trace[i].getMethodName()))
isInGlobalFieldMap = true;
}
@@ -901,6 +901,7 @@ public class TestIndexWriterExceptions e
for (FailOnlyInCommit failure : failures) {
MockDirectoryWrapper dir = newDirectory();
+ dir.setFailOnCreateOutput(false);
IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random)));
Document doc = new Document();
@@ -1302,20 +1303,17 @@ public class TestIndexWriterExceptions e
@Override
public void eval(MockDirectoryWrapper dir) throws IOException {
+
StackTraceElement[] trace = new Exception().getStackTrace();
- boolean failOnInit = false;
- boolean failOnfinish = false;
+ boolean fail = false;
for (int i = 0; i < trace.length; i++) {
- if ("org.apache.lucene.index.TermVectorsTermsWriter".equals(trace[i].getClassName()) && stage.equals(trace[i].getMethodName()))
- failOnInit = true;
- if ("org.apache.lucene.index.TermVectorsTermsWriter".equals(trace[i].getClassName()) && stage.equals(trace[i].getMethodName()))
- failOnfinish = true;
+ if (TermVectorsConsumer.class.getName().equals(trace[i].getClassName()) && stage.equals(trace[i].getMethodName())) {
+ fail = true;
+ }
}
- if (failOnInit) {
- throw new RuntimeException(EXC_MSG + " fail on init");
- } else if (failOnfinish) {
- throw new RuntimeException(EXC_MSG + " fail on finishDoc");
+ if (fail) {
+ throw new RuntimeException(EXC_MSG);
}
}
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterMerging.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterMerging.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterMerging.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterMerging.java Sun Nov 20 23:45:25 2011
@@ -116,9 +116,9 @@ public class TestIndexWriterMerging exte
writer.close();
}
- // LUCENE-325: test expungeDeletes, when 2 singular merges
+ // LUCENE-325: test forceMergeDeletes, when 2 singular merges
// are required
- public void testExpungeDeletes() throws IOException {
+ public void testForceMergeDeletes() throws IOException {
Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random))
@@ -156,7 +156,7 @@ public class TestIndexWriterMerging exte
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)).setMergePolicy(newLogMergePolicy()));
assertEquals(8, writer.numDocs());
assertEquals(10, writer.maxDoc());
- writer.expungeDeletes();
+ writer.forceMergeDeletes();
assertEquals(8, writer.numDocs());
writer.close();
ir = IndexReader.open(dir, true);
@@ -166,8 +166,8 @@ public class TestIndexWriterMerging exte
dir.close();
}
- // LUCENE-325: test expungeDeletes, when many adjacent merges are required
- public void testExpungeDeletes2() throws IOException {
+ // LUCENE-325: test forceMergeDeletes, when many adjacent merges are required
+ public void testForceMergeDeletes2() throws IOException {
Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(
dir,
@@ -210,7 +210,7 @@ public class TestIndexWriterMerging exte
setMergePolicy(newLogMergePolicy(3))
);
assertEquals(49, writer.numDocs());
- writer.expungeDeletes();
+ writer.forceMergeDeletes();
writer.close();
ir = IndexReader.open(dir, true);
assertEquals(49, ir.maxDoc());
@@ -219,9 +219,9 @@ public class TestIndexWriterMerging exte
dir.close();
}
- // LUCENE-325: test expungeDeletes without waiting, when
+ // LUCENE-325: test forceMergeDeletes without waiting, when
// many adjacent merges are required
- public void testExpungeDeletes3() throws IOException {
+ public void testForceMergeDeletes3() throws IOException {
Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(
dir,
@@ -262,7 +262,7 @@ public class TestIndexWriterMerging exte
newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)).
setMergePolicy(newLogMergePolicy(3))
);
- writer.expungeDeletes(false);
+ writer.forceMergeDeletes(false);
writer.close();
ir = IndexReader.open(dir, true);
assertEquals(49, ir.maxDoc());
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java Sun Nov 20 23:45:25 2011
@@ -873,7 +873,7 @@ public class TestIndexWriterReader exten
dir1.close();
}
- public void testExpungeDeletes() throws Throwable {
+ public void testForceMergeDeletes() throws Throwable {
Directory dir = newDirectory();
final IndexWriter w = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)).setMergePolicy(newLogMergePolicy()));
Document doc = new Document();
@@ -887,7 +887,7 @@ public class TestIndexWriterReader exten
w.deleteDocuments(new Term("id", "0"));
IndexReader r = w.getReader();
- w.expungeDeletes();
+ w.forceMergeDeletes();
w.close();
r.close();
r = IndexReader.open(dir, true);
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterUnicode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterUnicode.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterUnicode.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterUnicode.java Sun Nov 20 23:45:25 2011
@@ -135,7 +135,7 @@ public class TestIndexWriterUnicode exte
}
private void checkTermsOrder(IndexReader r, Set<String> allTerms, boolean isTop) throws IOException {
- TermsEnum terms = MultiFields.getFields(r).terms("f").iterator();
+ TermsEnum terms = MultiFields.getFields(r).terms("f").iterator(null);
BytesRef last = new BytesRef();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java Sun Nov 20 23:45:25 2011
@@ -278,7 +278,7 @@ public class TestIndexWriterWithThreads
for(int j=0;j<reader.maxDoc();j++) {
if (delDocs == null || !delDocs.get(j)) {
reader.document(j);
- reader.getTermFreqVectors(j);
+ reader.getTermVectors(j);
}
}
reader.close();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexableField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexableField.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexableField.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestIndexableField.java Sun Nov 20 23:45:25 2011
@@ -288,33 +288,31 @@ public class TestIndexableField extends
if (indexed) {
final boolean tv = counter % 2 == 1 && fieldID != 9;
- final TermFreqVector tfv = r.getTermFreqVector(docID, name);
if (tv) {
+ final Terms tfv = r.getTermVectors(docID).terms(name);
assertNotNull(tfv);
- assertTrue(tfv instanceof TermPositionVector);
- final TermPositionVector tpv = (TermPositionVector) tfv;
- final BytesRef[] terms = tpv.getTerms();
- assertEquals(2, terms.length);
- assertEquals(new BytesRef(""+counter), terms[0]);
- assertEquals(new BytesRef("text"), terms[1]);
-
- final int[] freqs = tpv.getTermFrequencies();
- assertEquals(2, freqs.length);
- assertEquals(1, freqs[0]);
- assertEquals(1, freqs[1]);
-
- int[] positions = tpv.getTermPositions(0);
- assertEquals(1, positions.length);
- assertEquals(1, positions[0]);
-
- positions = tpv.getTermPositions(1);
- assertEquals(1, positions.length);
- assertEquals(0, positions[0]);
+ TermsEnum termsEnum = tfv.iterator(null);
+ assertEquals(new BytesRef(""+counter), termsEnum.next());
+ assertEquals(1, termsEnum.totalTermFreq());
+ DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
+ assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
+ assertEquals(1, dpEnum.freq());
+ assertEquals(1, dpEnum.nextPosition());
+
+ assertEquals(new BytesRef("text"), termsEnum.next());
+ assertEquals(1, termsEnum.totalTermFreq());
+ dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+ assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
+ assertEquals(1, dpEnum.freq());
+ assertEquals(0, dpEnum.nextPosition());
+
+ assertNull(termsEnum.next());
// TODO: offsets
} else {
- assertNull(tfv);
+ Fields vectors = r.getTermVectors(docID);
+ assertTrue(vectors == null || vectors.terms(name) == null);
}
if (numeric) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestMultiFields.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestMultiFields.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestMultiFields.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestMultiFields.java Sun Nov 20 23:45:25 2011
@@ -113,7 +113,6 @@ public class TestMultiFields extends Luc
for(int delDoc : deleted) {
assertFalse(liveDocs.get(delDoc));
}
- Terms terms2 = MultiFields.getTerms(reader, "field");
for(int i=0;i<100;i++) {
BytesRef term = terms.get(random.nextInt(terms.size()));
@@ -121,7 +120,7 @@ public class TestMultiFields extends Luc
System.out.println("TEST: seek term="+ UnicodeUtil.toHexString(term.utf8ToString()) + " " + term);
}
- DocsEnum docsEnum = terms2.docs(liveDocs, term, null);
+ DocsEnum docsEnum = MultiFields.getTermDocsEnum(reader, liveDocs, "field", term);
assertNotNull(docsEnum);
for(int docID : docs.get(term)) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestNoMergePolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestNoMergePolicy.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestNoMergePolicy.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestNoMergePolicy.java Sun Nov 20 23:45:25 2011
@@ -32,7 +32,7 @@ public class TestNoMergePolicy extends L
MergePolicy mp = NoMergePolicy.NO_COMPOUND_FILES;
assertNull(mp.findMerges(null));
assertNull(mp.findForcedMerges(null, 0, null));
- assertNull(mp.findMergesToExpungeDeletes(null));
+ assertNull(mp.findForcedDeletesMerges(null));
assertFalse(mp.useCompoundFile(null, null));
mp.close();
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestOmitTf.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestOmitTf.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestOmitTf.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestOmitTf.java Sun Nov 20 23:45:25 2011
@@ -286,7 +286,8 @@ public class TestOmitTf extends LuceneTe
/*
* Verify the index
*/
- IndexSearcher searcher = new IndexSearcher(dir, true);
+ IndexReader reader = IndexReader.open(dir);
+ IndexSearcher searcher = new IndexSearcher(reader);
searcher.setSimilarityProvider(new SimpleSimilarityProvider());
Term a = new Term("noTf", term);
@@ -400,7 +401,8 @@ public class TestOmitTf extends LuceneTe
});
assertEquals(15, CountingHitCollector.getCount());
- searcher.close();
+ searcher.close();
+ reader.close();
dir.close();
}
@@ -445,7 +447,7 @@ public class TestOmitTf extends LuceneTe
IndexReader ir = iw.getReader();
iw.close();
Terms terms = MultiFields.getTerms(ir, "foo");
- assertEquals(-1, terms.totalTermFreq(new BytesRef("bar")));
+ assertEquals(-1, MultiFields.totalTermFreq(ir, "foo", new BytesRef("bar")));
assertEquals(-1, terms.getSumTotalTermFreq());
ir.close();
dir.close();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java Sun Nov 20 23:45:25 2011
@@ -84,7 +84,8 @@ public class TestParallelTermEnum extend
f = fe.next();
assertEquals("field1", f);
- TermsEnum te = fe.terms();
+ Terms terms = fe.terms();
+ TermsEnum te = terms.iterator(null);
assertEquals("brown", te.next().utf8ToString());
DocsEnum td = te.docs(liveDocs, null);
@@ -119,7 +120,9 @@ public class TestParallelTermEnum extend
assertNull(te.next());
f = fe.next();
assertEquals("field2", f);
- te = fe.terms();
+ terms = fe.terms();
+ assertNotNull(terms);
+ te = terms.iterator(null);
assertEquals("brown", te.next().utf8ToString());
td = te.docs(liveDocs, td);
@@ -154,7 +157,9 @@ public class TestParallelTermEnum extend
assertNull(te.next());
f = fe.next();
assertEquals("field3", f);
- te = fe.terms();
+ terms = fe.terms();
+ assertNotNull(terms);
+ te = terms.iterator(null);
assertEquals("dog", te.next().utf8ToString());
td = te.docs(liveDocs, td);
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPayloads.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPayloads.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPayloads.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPayloads.java Sun Nov 20 23:45:25 2011
@@ -527,7 +527,7 @@ public class TestPayloads extends Lucene
}
writer.close();
IndexReader reader = IndexReader.open(dir, true);
- TermsEnum terms = MultiFields.getFields(reader).terms(field).iterator();
+ TermsEnum terms = MultiFields.getFields(reader).terms(field).iterator(null);
Bits liveDocs = MultiFields.getLiveDocs(reader);
DocsAndPositionsEnum tp = null;
while (terms.next() != null) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java Sun Nov 20 23:45:25 2011
@@ -222,7 +222,7 @@ public class TestPerSegmentDeletes exten
throws IOException {
Fields fields = MultiFields.getFields(reader);
Terms cterms = fields.terms(term.field);
- TermsEnum ctermsEnum = cterms.iterator();
+ TermsEnum ctermsEnum = cterms.iterator(null);
if (ctermsEnum.seekExact(new BytesRef(term.text()), false)) {
DocsEnum docsEnum = ctermsEnum.docs(bits, null);
return toArray(docsEnum);
@@ -274,7 +274,7 @@ public class TestPerSegmentDeletes exten
}
@Override
- public MergeSpecification findMergesToExpungeDeletes(
+ public MergeSpecification findForcedDeletesMerges(
SegmentInfos segmentInfos) throws CorruptIndexException, IOException {
return null;
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java Sun Nov 20 23:45:25 2011
@@ -77,7 +77,7 @@ public class TestSegmentMerger extends L
public void testMerge() throws IOException {
final Codec codec = Codec.getDefault();
- SegmentMerger merger = new SegmentMerger(InfoStream.getDefault(), mergedDir, IndexWriterConfig.DEFAULT_TERM_INDEX_INTERVAL, mergedSegment, MergeState.CheckAbort.NONE, null, new FieldInfos(), codec, newIOContext(random));
+ SegmentMerger merger = new SegmentMerger(InfoStream.getDefault(), mergedDir, IndexWriterConfig.DEFAULT_TERM_INDEX_INTERVAL, mergedSegment, MergeState.CheckAbort.NONE, null, new FieldInfos(new FieldInfos.FieldNumberBiMap()), codec, newIOContext(random));
merger.add(reader1);
merger.add(reader2);
MergeState mergeState = merger.merge();
@@ -110,23 +110,19 @@ public class TestSegmentMerger extends L
//System.out.println("stored size: " + stored.size());
assertTrue("We do not have 3 fields that were indexed with term vector",stored.size() == 3);
- TermFreqVector vector = mergedReader.getTermFreqVector(0, DocHelper.TEXT_FIELD_2_KEY);
- assertTrue(vector != null);
- BytesRef [] terms = vector.getTerms();
- assertTrue(terms != null);
- //System.out.println("Terms size: " + terms.length);
- assertTrue(terms.length == 3);
- int [] freqs = vector.getTermFrequencies();
- assertTrue(freqs != null);
- //System.out.println("Freqs size: " + freqs.length);
- assertTrue(vector instanceof TermPositionVector == true);
-
- for (int i = 0; i < terms.length; i++) {
- String term = terms[i].utf8ToString();
- int freq = freqs[i];
+ Terms vector = mergedReader.getTermVectors(0).terms(DocHelper.TEXT_FIELD_2_KEY);
+ assertNotNull(vector);
+ assertEquals(3, vector.getUniqueTermCount());
+ TermsEnum termsEnum = vector.iterator(null);
+
+ int i = 0;
+ while (termsEnum.next() != null) {
+ String term = termsEnum.term().utf8ToString();
+ int freq = (int) termsEnum.totalTermFreq();
//System.out.println("Term: " + term + " Freq: " + freq);
assertTrue(DocHelper.FIELD_2_TEXT.indexOf(term) != -1);
assertTrue(DocHelper.FIELD_2_FREQS[i] == freq);
+ i++;
}
TestSegmentReader.checkNorms(mergedReader);
@@ -152,7 +148,7 @@ public class TestSegmentMerger extends L
SegmentMerger sm = new SegmentMerger(InfoStream.getDefault(), dir, 1, "a", MergeState.CheckAbort.NONE, null, null, Codec.getDefault(), newIOContext(random));
boolean doFail = false;
try {
- sm.createCompoundFile("b1", w.segmentInfos.info(0), newIOContext(random));
+ IndexWriter.createCompoundFile(dir, "b1", MergeState.CheckAbort.NONE, w.segmentInfos.info(0), newIOContext(random));
doFail = true; // should never get here
} catch (AssertionError e) {
// expected
@@ -173,7 +169,7 @@ public class TestSegmentMerger extends L
SegmentInfos sis = new SegmentInfos();
sis.read(dir);
try {
- sm.createCompoundFile("b2", sis.info(0), newIOContext(random));
+ IndexWriter.createCompoundFile(dir, "b2", MergeState.CheckAbort.NONE, sis.info(0), newIOContext(random));
doFail = true; // should never get here
} catch (AssertionError e) {
// expected
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java Sun Nov 20 23:45:25 2011
@@ -121,9 +121,11 @@ public class TestSegmentReader extends L
FieldsEnum fields = MultiFields.getFields(reader).iterator();
String field;
while((field = fields.next()) != null) {
- TermsEnum terms = fields.terms();
- while(terms.next() != null) {
- BytesRef term = terms.term();
+ Terms terms = fields.terms();
+ assertNotNull(terms);
+ TermsEnum termsEnum = terms.iterator(null);
+ while(termsEnum.next() != null) {
+ BytesRef term = termsEnum.term();
assertTrue(term != null);
String fieldValue = (String) DocHelper.nameValues.get(field);
assertTrue(fieldValue.indexOf(term.utf8ToString()) != -1);
@@ -188,20 +190,19 @@ public class TestSegmentReader extends L
}
public void testTermVectors() throws IOException {
- TermFreqVector result = reader.getTermFreqVector(0, DocHelper.TEXT_FIELD_2_KEY);
- assertTrue(result != null);
- BytesRef [] terms = result.getTerms();
- int [] freqs = result.getTermFrequencies();
- assertTrue(terms != null && terms.length == 3 && freqs != null && freqs.length == 3);
- for (int i = 0; i < terms.length; i++) {
- String term = terms[i].utf8ToString();
- int freq = freqs[i];
+ Terms result = reader.getTermVectors(0).terms(DocHelper.TEXT_FIELD_2_KEY);
+ assertNotNull(result);
+ assertEquals(3, result.getUniqueTermCount());
+ TermsEnum termsEnum = result.iterator(null);
+ while(termsEnum.next() != null) {
+ String term = termsEnum.term().utf8ToString();
+ int freq = (int) termsEnum.totalTermFreq();
assertTrue(DocHelper.FIELD_2_TEXT.indexOf(term) != -1);
assertTrue(freq > 0);
}
- TermFreqVector [] results = reader.getTermFreqVectors(0);
+ Fields results = reader.getTermVectors(0);
assertTrue(results != null);
- assertTrue("We do not have 3 term freq vectors, we have: " + results.length, results.length == 3);
+ assertEquals("We do not have 3 term freq vectors", 3, results.getUniqueFieldCount());
}
}
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java Sun Nov 20 23:45:25 2011
@@ -59,7 +59,7 @@ public class TestSegmentTermDocs extends
assertTrue(reader != null);
assertEquals(indexDivisor, reader.getTermInfosIndexDivisor());
- TermsEnum terms = reader.fields().terms(DocHelper.TEXT_FIELD_2_KEY).iterator();
+ TermsEnum terms = reader.fields().terms(DocHelper.TEXT_FIELD_2_KEY).iterator(null);
terms.seekCeil(new BytesRef("field"));
DocsEnum termDocs = terms.docs(reader.getLiveDocs(), null);
if (termDocs.nextDoc() != DocsEnum.NO_MORE_DOCS) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java Sun Nov 20 23:45:25 2011
@@ -79,7 +79,7 @@ public class TestSegmentTermEnum extends
addDoc(writer, "aaa bbb");
writer.close();
SegmentReader reader = getOnlySegmentReader(IndexReader.open(dir, false));
- TermsEnum terms = reader.fields().terms("content").iterator();
+ TermsEnum terms = reader.fields().terms("content").iterator(null);
assertNotNull(terms.next());
assertEquals("aaa", terms.term().utf8ToString());
assertNotNull(terms.next());
@@ -103,7 +103,7 @@ public class TestSegmentTermEnum extends
throws IOException
{
IndexReader reader = IndexReader.open(dir, true);
- TermsEnum termEnum = MultiFields.getTerms(reader, "content").iterator();
+ TermsEnum termEnum = MultiFields.getTerms(reader, "content").iterator(null);
// create enumeration of all terms
// go to the first term (aaa)
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSizeBoundedForceMerge.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSizeBoundedForceMerge.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSizeBoundedForceMerge.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestSizeBoundedForceMerge.java Sun Nov 20 23:45:25 2011
@@ -59,7 +59,7 @@ public class TestSizeBoundedForceMerge e
SegmentInfos sis = new SegmentInfos();
sis.read(dir);
- double min = sis.info(0).sizeInBytes(true);
+ double min = sis.info(0).sizeInBytes();
conf = newWriterConfig();
LogByteSizeMergePolicy lmp = new LogByteSizeMergePolicy();
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressAdvance.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressAdvance.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressAdvance.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressAdvance.java Sun Nov 20 23:45:25 2011
@@ -67,7 +67,7 @@ public class TestStressAdvance extends L
bDocIDs.add(docID);
}
}
- final TermsEnum te = r.getSequentialSubReaders()[0].fields().terms("field").iterator();
+ final TermsEnum te = r.getSequentialSubReaders()[0].fields().terms("field").iterator(null);
DocsEnum de = null;
for(int iter2=0;iter2<10;iter2++) {
Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java?rev=1204297&r1=1204296&r2=1204297&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java Sun Nov 20 23:45:25 2011
@@ -102,8 +102,12 @@ public class TestStressIndexing extends
@Override
public void doWork() throws Throwable {
- for (int i=0; i<100; i++)
- (new IndexSearcher(directory, true)).close();
+ for (int i=0; i<100; i++) {
+ IndexReader ir = IndexReader.open(directory, true);
+ IndexSearcher is = new IndexSearcher(ir);
+ is.close();
+ ir.close();
+ }
count += 100;
}
}