You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2012/08/13 15:53:27 UTC
svn commit: r1372423 [33/45] - in /lucene/dev/branches/LUCENE-2878: ./
dev-tools/ dev-tools/eclipse/ dev-tools/idea/.idea/libraries/
dev-tools/maven/ dev-tools/maven/lucene/
dev-tools/maven/lucene/analysis/common/
dev-tools/maven/lucene/analysis/icu/ d...
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestConcurrentMergeScheduler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestConcurrentMergeScheduler.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestConcurrentMergeScheduler.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestConcurrentMergeScheduler.java Mon Aug 13 13:52:46 2012
@@ -23,6 +23,7 @@ import org.apache.lucene.analysis.MockAn
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
+import org.apache.lucene.store.Directory;
import org.apache.lucene.store.MockDirectoryWrapper;
import org.apache.lucene.util.LuceneTestCase;
@@ -67,7 +68,7 @@ public class TestConcurrentMergeSchedule
// Make sure running BG merges still work fine even when
// we are hitting exceptions during flushing.
public void testFlushExceptions() throws IOException {
- MockDirectoryWrapper directory = newDirectory();
+ MockDirectoryWrapper directory = newMockDirectory();
FailOnlyOnFlush failure = new FailOnlyOnFlush();
directory.failOn(failure);
@@ -120,7 +121,7 @@ public class TestConcurrentMergeSchedule
// Test that deletes committed after a merge started and
// before it finishes, are correctly merged back:
public void testDeleteMerging() throws IOException {
- MockDirectoryWrapper directory = newDirectory();
+ Directory directory = newDirectory();
LogDocMergePolicy mp = new LogDocMergePolicy();
// Force degenerate merging so we can get a mix of
@@ -164,7 +165,7 @@ public class TestConcurrentMergeSchedule
}
public void testNoExtraFiles() throws IOException {
- MockDirectoryWrapper directory = newDirectory();
+ Directory directory = newDirectory();
IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random()))
.setMaxBufferedDocs(2));
@@ -195,7 +196,7 @@ public class TestConcurrentMergeSchedule
}
public void testNoWaitClose() throws IOException {
- MockDirectoryWrapper directory = newDirectory();
+ Directory directory = newDirectory();
Document doc = new Document();
Field idField = newStringField("id", "", Field.Store.YES);
doc.add(idField);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCrash.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCrash.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCrash.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCrash.java Mon Aug 13 13:52:46 2012
@@ -30,7 +30,7 @@ import org.apache.lucene.document.Docume
public class TestCrash extends LuceneTestCase {
private IndexWriter initIndex(Random random, boolean initialCommit) throws IOException {
- return initIndex(random, newDirectory(random), initialCommit);
+ return initIndex(random, newMockDirectory(random), initialCommit);
}
private IndexWriter initIndex(Random random, MockDirectoryWrapper dir, boolean initialCommit) throws IOException {
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java Mon Aug 13 13:52:46 2012
@@ -29,7 +29,6 @@ import org.apache.lucene.search.similari
import org.apache.lucene.search.similarities.PerFieldSimilarityWrapper;
import org.apache.lucene.search.similarities.Similarity;
import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockDirectoryWrapper;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.LineFileDocs;
@@ -44,7 +43,7 @@ public class TestCustomNorms extends Luc
public void testFloatNorms() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriterConfig config = newIndexWriterConfig(TEST_VERSION_CURRENT,
new MockAnalyzer(random()));
Similarity provider = new MySimProvider();
@@ -85,7 +84,7 @@ public class TestCustomNorms extends Luc
}
public void testExceptionOnRandomType() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriterConfig config = newIndexWriterConfig(TEST_VERSION_CURRENT,
new MockAnalyzer(random()));
Similarity provider = new MySimProvider();
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java Mon Aug 13 13:52:46 2012
@@ -97,13 +97,13 @@ public class TestDirectoryReader extends
te2.term(),
MultiFields.getLiveDocs(mr2),
null,
- false);
+ 0);
TermsEnum te3 = MultiFields.getTerms(mr3, "body").iterator(null);
te3.seekCeil(new BytesRef("wow"));
td = _TestUtil.docs(random(), te3, MultiFields.getLiveDocs(mr3),
td,
- false);
+ 0);
int ret = 0;
@@ -355,7 +355,7 @@ void assertTermDocsCount(String msg,
new BytesRef(term.text()),
MultiFields.getLiveDocs(reader),
null,
- false);
+ 0);
int count = 0;
if (tdocs != null) {
while(tdocs.nextDoc()!= DocIdSetIterator.NO_MORE_DOCS) {
@@ -612,27 +612,27 @@ public void testFilesOpenClose() throws
}
// check dictionary and posting lists
- FieldsEnum fenum1 = MultiFields.getFields(index1).iterator();
- FieldsEnum fenum2 = MultiFields.getFields(index1).iterator();
- String field1 = null;
+ Fields fields1 = MultiFields.getFields(index1);
+ Fields fields2 = MultiFields.getFields(index2);
+ Iterator<String> fenum2 = fields2.iterator();
Bits liveDocs = MultiFields.getLiveDocs(index1);
- while((field1=fenum1.next()) != null) {
+ for (String field1 : fields1) {
assertEquals("Different fields", field1, fenum2.next());
- Terms terms1 = fenum1.terms();
+ Terms terms1 = fields1.terms(field1);
if (terms1 == null) {
- assertNull(fenum2.terms());
+ assertNull(fields2.terms(field1));
continue;
}
TermsEnum enum1 = terms1.iterator(null);
- Terms terms2 = fenum2.terms();
+ Terms terms2 = fields2.terms(field1);
assertNotNull(terms2);
TermsEnum enum2 = terms2.iterator(null);
while(enum1.next() != null) {
assertEquals("Different terms", enum1.term(), enum2.next());
- DocsAndPositionsEnum tp1 = enum1.docsAndPositions(liveDocs, null, false);
- DocsAndPositionsEnum tp2 = enum2.docsAndPositions(liveDocs, null, false);
+ DocsAndPositionsEnum tp1 = enum1.docsAndPositions(liveDocs, null);
+ DocsAndPositionsEnum tp2 = enum2.docsAndPositions(liveDocs, null);
while(tp1.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
assertTrue(tp2.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
@@ -644,6 +644,7 @@ public void testFilesOpenClose() throws
}
}
}
+ assertFalse(fenum2.hasNext());
}
public void testGetIndexCommit() throws IOException {
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDoc.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDoc.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDoc.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDoc.java Mon Aug 13 13:52:46 2012
@@ -32,7 +32,6 @@ import java.util.LinkedList;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.codecs.Codec;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
import org.apache.lucene.search.DocIdSetIterator;
@@ -128,13 +127,13 @@ public class TestDoc extends LuceneTestC
printSegment(out, si2);
writer.close();
- SegmentInfoPerCommit siMerge = merge(directory, si1, si2, "merge", false);
+ SegmentInfoPerCommit siMerge = merge(directory, si1, si2, "_merge", false);
printSegment(out, siMerge);
- SegmentInfoPerCommit siMerge2 = merge(directory, si1, si2, "merge2", false);
+ SegmentInfoPerCommit siMerge2 = merge(directory, si1, si2, "_merge2", false);
printSegment(out, siMerge2);
- SegmentInfoPerCommit siMerge3 = merge(directory, siMerge, siMerge2, "merge3", false);
+ SegmentInfoPerCommit siMerge3 = merge(directory, siMerge, siMerge2, "_merge3", false);
printSegment(out, siMerge3);
directory.close();
@@ -163,13 +162,13 @@ public class TestDoc extends LuceneTestC
printSegment(out, si2);
writer.close();
- siMerge = merge(directory, si1, si2, "merge", true);
+ siMerge = merge(directory, si1, si2, "_merge", true);
printSegment(out, siMerge);
- siMerge2 = merge(directory, si1, si2, "merge2", true);
+ siMerge2 = merge(directory, si1, si2, "_merge2", true);
printSegment(out, siMerge2);
- siMerge3 = merge(directory, siMerge, siMerge2, "merge3", true);
+ siMerge3 = merge(directory, siMerge, siMerge2, "_merge3", true);
printSegment(out, siMerge3);
directory.close();
@@ -186,7 +185,7 @@ public class TestDoc extends LuceneTestC
File file = new File(workDir, fileName);
Document doc = new Document();
InputStreamReader is = new InputStreamReader(new FileInputStream(file), "UTF-8");
- doc.add(new TextField("contents", is, Field.Store.NO));
+ doc.add(new TextField("contents", is));
writer.addDocument(doc);
writer.commit();
is.close();
@@ -236,10 +235,9 @@ public class TestDoc extends LuceneTestC
for (int i = 0; i < reader.numDocs(); i++)
out.println(reader.document(i));
- FieldsEnum fis = reader.fields().iterator();
- String field = fis.next();
- while(field != null) {
- Terms terms = fis.terms();
+ Fields fields = reader.fields();
+ for (String field : fields) {
+ Terms terms = fields.terms(field);
assertNotNull(terms);
TermsEnum tis = terms.iterator(null);
while(tis.next() != null) {
@@ -247,7 +245,7 @@ public class TestDoc extends LuceneTestC
out.print(" term=" + field + ":" + tis.term());
out.println(" DF=" + tis.docFreq());
- DocsAndPositionsEnum positions = tis.docsAndPositions(reader.getLiveDocs(), null, false);
+ DocsAndPositionsEnum positions = tis.docsAndPositions(reader.getLiveDocs(), null);
while (positions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
out.print(" doc=" + positions.docID());
@@ -259,7 +257,6 @@ public class TestDoc extends LuceneTestC
out.println("");
}
}
- field = fis.next();
}
reader.close();
}
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocCount.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocCount.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocCount.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocCount.java Mon Aug 13 13:52:46 2012
@@ -61,9 +61,7 @@ public class TestDocCount extends Lucene
if (fields == null) {
return;
}
- FieldsEnum e = fields.iterator();
- String field;
- while ((field = e.next()) != null) {
+ for (String field : fields) {
Terms terms = fields.terms(field);
if (terms == null) {
continue;
@@ -72,7 +70,7 @@ public class TestDocCount extends Lucene
FixedBitSet visited = new FixedBitSet(ir.maxDoc());
TermsEnum te = terms.iterator(null);
while (te.next() != null) {
- DocsEnum de = _TestUtil.docs(random(), te, null, null, false);
+ DocsEnum de = _TestUtil.docs(random(), te, null, null, 0);
while (de.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
visited.set(de.docID());
}
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocTermOrds.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocTermOrds.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocTermOrds.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocTermOrds.java Mon Aug 13 13:52:46 2012
@@ -89,7 +89,7 @@ public class TestDocTermOrds extends Luc
}
public void testRandom() throws Exception {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
final int NUM_TERMS = atLeast(20);
final Set<BytesRef> terms = new HashSet<BytesRef>();
@@ -176,7 +176,7 @@ public class TestDocTermOrds extends Luc
}
public void testRandomWithPrefix() throws Exception {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
final Set<String> prefixes = new HashSet<String>();
final int numPrefix = _TestUtil.nextInt(random(), 2, 7);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java Mon Aug 13 13:52:46 2012
@@ -881,7 +881,7 @@ public class TestDocValuesIndexing exten
public int docId(AtomicReader reader, Term term) throws IOException {
int docFreq = reader.docFreq(term);
assertEquals(1, docFreq);
- DocsEnum termDocsEnum = reader.termDocsEnum(null, term.field, term.bytes, false);
+ DocsEnum termDocsEnum = reader.termDocsEnum(null, term.field, term.bytes, 0);
int nextDoc = termDocsEnum.nextDoc();
assertEquals(DocIdSetIterator.NO_MORE_DOCS, termDocsEnum.nextDoc());
return nextDoc;
@@ -1025,4 +1025,21 @@ public class TestDocValuesIndexing exten
w.close();
d.close();
}
+
+ public void testFixedLengthNotReallyFixed() throws IOException {
+ Directory d = newDirectory();
+ IndexWriter w = new IndexWriter(d, new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
+ Document doc = new Document();
+ doc.add(new DerefBytesDocValuesField("foo", new BytesRef("bar"), true));
+ w.addDocument(doc);
+ doc = new Document();
+ doc.add(new DerefBytesDocValuesField("foo", new BytesRef("bazz"), true));
+ try {
+ w.addDocument(doc);
+ } catch (IllegalArgumentException expected) {
+ // expected
+ }
+ w.close();
+ d.close();
+ }
}
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java Mon Aug 13 13:52:46 2012
@@ -92,7 +92,7 @@ public class TestDocsAndPositions extend
public DocsAndPositionsEnum getDocsAndPositions(AtomicReader reader,
BytesRef bytes, Bits liveDocs) throws IOException {
- return reader.termPositionsEnum(null, fieldName, bytes, false);
+ return reader.termPositionsEnum(null, fieldName, bytes);
}
/**
@@ -217,7 +217,7 @@ public class TestDocsAndPositions extend
IndexReaderContext topReaderContext = reader.getTopReaderContext();
for (AtomicReaderContext context : topReaderContext.leaves()) {
int maxDoc = context.reader().maxDoc();
- DocsEnum docsEnum = _TestUtil.docs(random(), context.reader(), fieldName, bytes, null, null, true);
+ DocsEnum docsEnum = _TestUtil.docs(random(), context.reader(), fieldName, bytes, null, null, DocsEnum.FLAG_FREQS);
if (findNext(freqInDoc, context.docBase, context.docBase + maxDoc) == Integer.MAX_VALUE) {
assertNull(docsEnum);
continue;
@@ -327,7 +327,7 @@ public class TestDocsAndPositions extend
writer.addDocument(doc);
DirectoryReader reader = writer.getReader();
AtomicReader r = getOnlySegmentReader(reader);
- DocsEnum disi = _TestUtil.docs(random(), r, "foo", new BytesRef("bar"), null, null, false);
+ DocsEnum disi = _TestUtil.docs(random(), r, "foo", new BytesRef("bar"), null, null, 0);
int docid = disi.docID();
assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
@@ -335,7 +335,7 @@ public class TestDocsAndPositions extend
// now reuse and check again
TermsEnum te = r.terms("foo").iterator(null);
assertTrue(te.seekExact(new BytesRef("bar"), true));
- disi = _TestUtil.docs(random(), te, null, disi, false);
+ disi = _TestUtil.docs(random(), te, null, disi, 0);
docid = disi.docID();
assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
@@ -352,7 +352,7 @@ public class TestDocsAndPositions extend
writer.addDocument(doc);
DirectoryReader reader = writer.getReader();
AtomicReader r = getOnlySegmentReader(reader);
- DocsAndPositionsEnum disi = r.termPositionsEnum(null, "foo", new BytesRef("bar"), false);
+ 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);
@@ -360,7 +360,7 @@ public class TestDocsAndPositions extend
// now reuse and check again
TermsEnum te = r.terms("foo").iterator(null);
assertTrue(te.seekExact(new BytesRef("bar"), true));
- disi = te.docsAndPositions(null, disi, false);
+ disi = te.docsAndPositions(null, disi);
docid = disi.docID();
assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS);
assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java Mon Aug 13 13:52:46 2012
@@ -129,7 +129,7 @@ public class TestDocumentWriter extends
SegmentReader reader = new SegmentReader(info, DirectoryReader.DEFAULT_TERMS_INDEX_DIVISOR, newIOContext(random()));
DocsAndPositionsEnum termPositions = MultiFields.getTermPositionsEnum(reader, MultiFields.getLiveDocs(reader),
- "repeated", new BytesRef("repeated"), false);
+ "repeated", new BytesRef("repeated"));
assertTrue(termPositions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
int freq = termPositions.freq();
assertEquals(2, freq);
@@ -200,16 +200,16 @@ public class TestDocumentWriter extends
writer.close();
SegmentReader reader = new SegmentReader(info, DirectoryReader.DEFAULT_TERMS_INDEX_DIVISOR, newIOContext(random()));
- DocsAndPositionsEnum termPositions = MultiFields.getTermPositionsEnum(reader, reader.getLiveDocs(), "f1", new BytesRef("a"), false);
+ DocsAndPositionsEnum termPositions = MultiFields.getTermPositionsEnum(reader, reader.getLiveDocs(), "f1", new BytesRef("a"));
assertTrue(termPositions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
int freq = termPositions.freq();
assertEquals(3, freq);
assertEquals(0, termPositions.nextPosition());
- assertEquals(true, termPositions.hasPayload());
+ assertNotNull(termPositions.getPayload());
assertEquals(6, termPositions.nextPosition());
- assertEquals(false, termPositions.hasPayload());
+ assertNull(termPositions.getPayload());
assertEquals(7, termPositions.nextPosition());
- assertEquals(false, termPositions.hasPayload());
+ assertNull(termPositions.getPayload());
reader.close();
}
@@ -243,18 +243,18 @@ public class TestDocumentWriter extends
writer.close();
SegmentReader reader = new SegmentReader(info, DirectoryReader.DEFAULT_TERMS_INDEX_DIVISOR, newIOContext(random()));
- DocsAndPositionsEnum termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term1"), false);
+ DocsAndPositionsEnum termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term1"));
assertTrue(termPositions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(1, termPositions.freq());
assertEquals(0, termPositions.nextPosition());
- termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term2"), false);
+ termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term2"));
assertTrue(termPositions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(2, termPositions.freq());
assertEquals(1, termPositions.nextPosition());
assertEquals(3, termPositions.nextPosition());
- termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term3"), false);
+ termPositions = reader.termPositionsEnum(reader.getLiveDocs(), "preanalyzed", new BytesRef("term3"));
assertTrue(termPositions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(1, termPositions.freq());
assertEquals(2, termPositions.nextPosition());
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentsWriterStallControl.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentsWriterStallControl.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentsWriterStallControl.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDocumentsWriterStallControl.java Mon Aug 13 13:52:46 2012
@@ -27,12 +27,9 @@ import java.util.concurrent.atomic.Atomi
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.ThreadInterruptedException;
-import com.carrotsearch.randomizedtesting.annotations.ThreadLeaks;
-
/**
* Tests for {@link DocumentsWriterStallControl}
*/
-@ThreadLeaks(failTestIfLeaking = true)
public class TestDocumentsWriterStallControl extends LuceneTestCase {
public void testSimpleStall() throws InterruptedException {
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java Mon Aug 13 13:52:46 2012
@@ -173,15 +173,15 @@ public class TestDuelingCodecs extends L
}
assertFieldStatistics(leftFields, rightFields);
- FieldsEnum leftEnum = leftFields.iterator();
- FieldsEnum rightEnum = rightFields.iterator();
+ Iterator<String> leftEnum = leftFields.iterator();
+ Iterator<String> rightEnum = rightFields.iterator();
- String field;
- while ((field = leftEnum.next()) != null) {
+ while (leftEnum.hasNext()) {
+ String field = leftEnum.next();
assertEquals(info, field, rightEnum.next());
- assertTerms(leftEnum.terms(), rightEnum.terms(), deep);
+ assertTerms(leftFields.terms(field), rightFields.terms(field), deep);
}
- assertNull(rightEnum.next());
+ assertFalse(rightEnum.hasNext());
}
/**
@@ -207,6 +207,9 @@ public class TestDuelingCodecs extends L
return;
}
assertTermsStatistics(leftTerms, rightTerms);
+ assertEquals(leftTerms.hasOffsets(), rightTerms.hasOffsets());
+ assertEquals(leftTerms.hasPositions(), rightTerms.hasPositions());
+ assertEquals(leftTerms.hasPayloads(), rightTerms.hasPayloads());
TermsEnum leftTermsEnum = leftTerms.iterator(null);
TermsEnum rightTermsEnum = rightTerms.iterator(null);
@@ -329,52 +332,52 @@ public class TestDuelingCodecs extends L
assertEquals(info, term, rightTermsEnum.next());
assertTermStats(leftTermsEnum, rightTermsEnum);
if (deep) {
- assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, false),
- rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, false));
- assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, false),
- rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, false));
+ assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions),
+ rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions));
+ assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions),
+ rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions));
assertPositionsSkipping(leftTermsEnum.docFreq(),
- leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, false),
- rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, false));
+ leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions),
+ rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions));
assertPositionsSkipping(leftTermsEnum.docFreq(),
- leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, false),
- rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, false));
+ leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions),
+ rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions));
// with freqs:
- assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, true),
- rightDocs = rightTermsEnum.docs(null, rightDocs, true),
+ assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs),
+ rightDocs = rightTermsEnum.docs(null, rightDocs),
true);
- assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, true),
- rightDocs = rightTermsEnum.docs(randomBits, rightDocs, true),
+ assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs),
+ rightDocs = rightTermsEnum.docs(randomBits, rightDocs),
true);
// w/o freqs:
- assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, false),
- rightDocs = rightTermsEnum.docs(null, rightDocs, false),
+ assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, 0),
+ rightDocs = rightTermsEnum.docs(null, rightDocs, 0),
false);
- assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, false),
- rightDocs = rightTermsEnum.docs(randomBits, rightDocs, false),
+ assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0),
+ rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0),
false);
// with freqs:
assertDocsSkipping(leftTermsEnum.docFreq(),
- leftDocs = leftTermsEnum.docs(null, leftDocs, true),
- rightDocs = rightTermsEnum.docs(null, rightDocs, true),
+ leftDocs = leftTermsEnum.docs(null, leftDocs),
+ rightDocs = rightTermsEnum.docs(null, rightDocs),
true);
assertDocsSkipping(leftTermsEnum.docFreq(),
- leftDocs = leftTermsEnum.docs(randomBits, leftDocs, true),
- rightDocs = rightTermsEnum.docs(randomBits, rightDocs, true),
+ leftDocs = leftTermsEnum.docs(randomBits, leftDocs),
+ rightDocs = rightTermsEnum.docs(randomBits, rightDocs),
true);
// w/o freqs:
assertDocsSkipping(leftTermsEnum.docFreq(),
- leftDocs = leftTermsEnum.docs(null, leftDocs, false),
- rightDocs = rightTermsEnum.docs(null, rightDocs, false),
+ leftDocs = leftTermsEnum.docs(null, leftDocs, 0),
+ rightDocs = rightTermsEnum.docs(null, rightDocs, 0),
false);
assertDocsSkipping(leftTermsEnum.docFreq(),
- leftDocs = leftTermsEnum.docs(randomBits, leftDocs, false),
- rightDocs = rightTermsEnum.docs(randomBits, rightDocs, false),
+ leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0),
+ rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0),
false);
}
}
@@ -409,12 +412,9 @@ public class TestDuelingCodecs extends L
assertEquals(info, freq, rightDocs.freq());
for (int i = 0; i < freq; i++) {
assertEquals(info, leftDocs.nextPosition(), rightDocs.nextPosition());
- assertEquals(info, leftDocs.hasPayload(), rightDocs.hasPayload());
+ assertEquals(info, leftDocs.getPayload(), rightDocs.getPayload());
assertEquals(info, leftDocs.startOffset(), rightDocs.startOffset());
assertEquals(info, leftDocs.endOffset(), rightDocs.endOffset());
- if (leftDocs.hasPayload()) {
- assertEquals(info, leftDocs.getPayload(), rightDocs.getPayload());
- }
}
}
assertEquals(info, DocIdSetIterator.NO_MORE_DOCS, rightDocs.nextDoc());
@@ -506,10 +506,7 @@ public class TestDuelingCodecs extends L
assertEquals(info, freq, rightDocs.freq());
for (int i = 0; i < freq; i++) {
assertEquals(info, leftDocs.nextPosition(), rightDocs.nextPosition());
- assertEquals(info, leftDocs.hasPayload(), rightDocs.hasPayload());
- if (leftDocs.hasPayload()) {
- assertEquals(info, leftDocs.getPayload(), rightDocs.getPayload());
- }
+ assertEquals(info, leftDocs.getPayload(), rightDocs.getPayload());
}
}
}
@@ -528,9 +525,7 @@ public class TestDuelingCodecs extends L
return;
}
- FieldsEnum fieldsEnum = leftFields.iterator();
- String field;
- while ((field = fieldsEnum.next()) != null) {
+ for (String field : leftFields) {
DocValues leftNorms = MultiDocValues.getNormDocValues(leftReader, field);
DocValues rightNorms = MultiDocValues.getNormDocValues(rightReader, field);
if (leftNorms != null && rightNorms != null) {
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFilterAtomicReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFilterAtomicReader.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFilterAtomicReader.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFilterAtomicReader.java Mon Aug 13 13:52:46 2012
@@ -26,7 +26,7 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.Field;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockDirectoryWrapper;
+import org.apache.lucene.store.BaseDirectoryWrapper;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.LuceneTestCase;
@@ -40,10 +40,7 @@ public class TestFilterAtomicReader exte
TestFields(Fields in) {
super(in);
}
- @Override
- public FieldsEnum iterator() throws IOException {
- return new TestFieldsEnum(super.iterator());
- }
+
@Override
public Terms terms(String field) throws IOException {
return new TestTerms(super.terms(field));
@@ -61,17 +58,6 @@ public class TestFilterAtomicReader exte
}
}
- private static class TestFieldsEnum extends FilterFieldsEnum {
- TestFieldsEnum(FieldsEnum in) {
- super(in);
- }
-
- @Override
- public Terms terms() throws IOException {
- return new TestTerms(super.terms());
- }
- }
-
private static class TestTermsEnum extends FilterTermsEnum {
public TestTermsEnum(TermsEnum in) {
super(in);
@@ -89,8 +75,8 @@ public class TestFilterAtomicReader exte
}
@Override
- public DocsAndPositionsEnum docsAndPositions(Bits liveDocs, DocsAndPositionsEnum reuse, boolean needsOffsets) throws IOException {
- return new TestPositions(super.docsAndPositions(liveDocs, reuse == null ? null : ((FilterDocsAndPositionsEnum) reuse).in, needsOffsets));
+ public DocsAndPositionsEnum docsAndPositions(Bits liveDocs, DocsAndPositionsEnum reuse, int flags) throws IOException {
+ return new TestPositions(super.docsAndPositions(liveDocs, reuse == null ? null : ((FilterDocsAndPositionsEnum) reuse).in, flags));
}
}
@@ -148,7 +134,7 @@ public class TestFilterAtomicReader exte
Directory target = newDirectory();
// We mess with the postings so this can fail:
- ((MockDirectoryWrapper) target).setCrossCheckTermVectorsOnClose(false);
+ ((BaseDirectoryWrapper) target).setCrossCheckTermVectorsOnClose(false);
writer = new IndexWriter(target, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
IndexReader reader = new TestReader(DirectoryReader.open(directory));
@@ -164,8 +150,7 @@ public class TestFilterAtomicReader exte
assertEquals(TermsEnum.SeekStatus.FOUND, terms.seekCeil(new BytesRef("one")));
- DocsAndPositionsEnum positions = terms.docsAndPositions(MultiFields.getLiveDocs(reader),
- null, false);
+ DocsAndPositionsEnum positions = terms.docsAndPositions(MultiFields.getLiveDocs(reader), null);
while (positions.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
assertTrue((positions.docID() % 2) == 1);
}
@@ -195,7 +180,6 @@ public class TestFilterAtomicReader exte
checkOverrideMethods(FilterAtomicReader.class);
checkOverrideMethods(FilterAtomicReader.FilterFields.class);
checkOverrideMethods(FilterAtomicReader.FilterTerms.class);
- checkOverrideMethods(FilterAtomicReader.FilterFieldsEnum.class);
checkOverrideMethods(FilterAtomicReader.FilterTermsEnum.class);
checkOverrideMethods(FilterAtomicReader.FilterDocsEnum.class);
checkOverrideMethods(FilterAtomicReader.FilterDocsAndPositionsEnum.class);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFlushByRamOrCountsPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFlushByRamOrCountsPolicy.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFlushByRamOrCountsPolicy.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestFlushByRamOrCountsPolicy.java Mon Aug 13 13:52:46 2012
@@ -231,7 +231,7 @@ public class TestFlushByRamOrCountsPolic
final int numDocumentsToIndex = 50 + random().nextInt(50);
for (int i = 0; i < numThreads.length; i++) {
AtomicInteger numDocs = new AtomicInteger(numDocumentsToIndex);
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
// mock a very slow harddisk sometimes here so that flushing is very slow
dir.setThrottling(MockDirectoryWrapper.Throttling.SOMETIMES);
IndexWriterConfig iwc = newIndexWriterConfig(TEST_VERSION_CURRENT,
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestForTooMuchCloning.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestForTooMuchCloning.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestForTooMuchCloning.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestForTooMuchCloning.java Mon Aug 13 13:52:46 2012
@@ -37,7 +37,7 @@ public class TestForTooMuchCloning exten
// NOTE: if we see a fail on this test with "NestedPulsing" its because its
// reuse isnt perfect (but reasonable). see TestPulsingReuse.testNestedPulsing
// for more details
- final MockDirectoryWrapper dir = newDirectory();
+ final MockDirectoryWrapper dir = newMockDirectory();
final TieredMergePolicy tmp = new TieredMergePolicy();
tmp.setMaxMergeAtOnce(2);
final RandomIndexWriter w = new RandomIndexWriter(random(), dir,
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexFileDeleter.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexFileDeleter.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexFileDeleter.java Mon Aug 13 13:52:46 2012
@@ -39,8 +39,10 @@ import org.apache.lucene.util.LuceneTest
public class TestIndexFileDeleter extends LuceneTestCase {
public void testDeleteLeftoverFiles() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
- dir.setPreventDoubleWrite(false);
+ Directory dir = newDirectory();
+ if (dir instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)dir).setPreventDoubleWrite(false);
+ }
LogMergePolicy mergePolicy = newLogMergePolicy(true, 10);
mergePolicy.setNoCFSRatio(1); // This test expects all of its segments to be in CFS
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java Mon Aug 13 13:52:46 2012
@@ -35,6 +35,7 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.Field;
import org.apache.lucene.document.FieldType;
import org.apache.lucene.document.StoredField;
+import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.FieldInfo.IndexOptions;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
@@ -45,6 +46,7 @@ import org.apache.lucene.search.ScoreDoc
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.store.AlreadyClosedException;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IndexOutput;
import org.apache.lucene.store.Lock;
import org.apache.lucene.store.LockFactory;
import org.apache.lucene.store.LockObtainFailedException;
@@ -212,7 +214,7 @@ public class TestIndexWriter extends Luc
public void testIndexNoDocuments() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())));
writer.commit();
writer.close();
@@ -234,7 +236,7 @@ public class TestIndexWriter extends Luc
}
public void testManyFields() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).setMaxBufferedDocs(10));
for(int j=0;j<100;j++) {
Document doc = new Document();
@@ -264,7 +266,7 @@ public class TestIndexWriter extends Luc
}
public void testSmallRAMBuffer() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(
dir,
newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).
@@ -404,7 +406,7 @@ public class TestIndexWriter extends Luc
}
public void testDiverseDocs() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).setRAMBufferSizeMB(0.5));
int n = atLeast(1);
for(int i=0;i<n;i++) {
@@ -453,7 +455,7 @@ public class TestIndexWriter extends Luc
}
public void testEnablingNorms() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).setMaxBufferedDocs(10));
// Enable norms for only 1 doc, pre flush
FieldType customType = new FieldType(TextField.TYPE_STORED);
@@ -509,7 +511,7 @@ public class TestIndexWriter extends Luc
}
public void testHighFreqTerm() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random())).setRAMBufferSizeMB(0.01));
// Massive doc that has 128 K a's
@@ -539,7 +541,7 @@ public class TestIndexWriter extends Luc
new BytesRef("a"),
MultiFields.getLiveDocs(reader),
null,
- true);
+ DocsEnum.FLAG_FREQS);
td.nextDoc();
assertEquals(128*1024, td.freq());
reader.close();
@@ -938,14 +940,14 @@ public class TestIndexWriter extends Luc
Terms tpv = r.getTermVectors(0).terms("field");
TermsEnum termsEnum = tpv.iterator(null);
assertNotNull(termsEnum.next());
- DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, false);
+ DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
assertNotNull(dpEnum);
assertTrue(dpEnum.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(1, dpEnum.freq());
assertEquals(100, dpEnum.nextPosition());
assertNotNull(termsEnum.next());
- dpEnum = termsEnum.docsAndPositions(null, dpEnum, false);
+ dpEnum = termsEnum.docsAndPositions(null, dpEnum);
assertNotNull(dpEnum);
assertTrue(dpEnum.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(1, dpEnum.freq());
@@ -1180,12 +1182,12 @@ public class TestIndexWriter extends Luc
// test that the terms were indexed.
- assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc1field1"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
- assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc2field1"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
- assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc3field1"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
- assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc1field2"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
- assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc2field2"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
- assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc3field2"), null, null, false).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc1field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc2field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc3field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc1field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc2field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
+ assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc3field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
ir.close();
dir.close();
@@ -1257,7 +1259,7 @@ public class TestIndexWriter extends Luc
TermsEnum t = r.fields().terms("field").iterator(null);
int count = 0;
while(t.next() != null) {
- final DocsEnum docs = _TestUtil.docs(random(), t, null, null, false);
+ final DocsEnum docs = _TestUtil.docs(random(), t, null, null, 0);
assertEquals(0, docs.nextDoc());
assertEquals(DocIdSetIterator.NO_MORE_DOCS, docs.nextDoc());
count++;
@@ -1270,7 +1272,7 @@ public class TestIndexWriter extends Luc
public void testDeleteUnusedFiles() throws Exception {
for(int iter=0;iter<2;iter++) {
- Directory dir = newDirectory();
+ Directory dir = newMockDirectory(); // relies on windows semantics
LogMergePolicy mergePolicy = newLogMergePolicy(true);
mergePolicy.setNoCFSRatio(1); // This test expects all of its segments to be in CFS
@@ -1586,7 +1588,7 @@ public class TestIndexWriter extends Luc
// Make sure position is still incremented when
// massive term is skipped:
- DocsAndPositionsEnum tps = MultiFields.getTermPositionsEnum(reader, null, "content", new BytesRef("another"), false);
+ DocsAndPositionsEnum tps = MultiFields.getTermPositionsEnum(reader, null, "content", new BytesRef("another"));
assertEquals(0, tps.nextDoc());
assertEquals(1, tps.freq());
assertEquals(3, tps.nextPosition());
@@ -1799,4 +1801,89 @@ public class TestIndexWriter extends Luc
r.close();
dir.close();
}
+
+ public void testDontInvokeAnalyzerForUnAnalyzedFields() throws Exception {
+ Analyzer analyzer = new Analyzer() {
+ @Override
+ protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
+ throw new IllegalStateException("don't invoke me!");
+ }
+
+ @Override
+ public int getPositionIncrementGap(String fieldName) {
+ throw new IllegalStateException("don't invoke me!");
+ }
+
+ @Override
+ public int getOffsetGap(String fieldName) {
+ throw new IllegalStateException("don't invoke me!");
+ }
+ };
+ Directory dir = newDirectory();
+ IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(
+ TEST_VERSION_CURRENT, analyzer));
+ Document doc = new Document();
+ FieldType customType = new FieldType(StringField.TYPE_NOT_STORED);
+ customType.setStoreTermVectors(true);
+ customType.setStoreTermVectorPositions(true);
+ customType.setStoreTermVectorOffsets(true);
+ Field f = newField("field", "abcd", customType);
+ doc.add(f);
+ doc.add(f);
+ Field f2 = newField("field", "", customType);
+ doc.add(f2);
+ doc.add(f);
+ w.addDocument(doc);
+ w.close();
+ dir.close();
+ }
+
+ //LUCENE-1468 -- make sure opening an IndexWriter with
+ // create=true does not remove non-index files
+
+ public void testOtherFiles() throws Throwable {
+ Directory dir = newDirectory();
+ IndexWriter iw = new IndexWriter(dir,
+ newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
+ iw.addDocument(new Document());
+ iw.close();
+ try {
+ // Create my own random file:
+ IndexOutput out = dir.createOutput("myrandomfile", newIOContext(random()));
+ out.writeByte((byte) 42);
+ out.close();
+
+ new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random()))).close();
+
+ assertTrue(dir.fileExists("myrandomfile"));
+ } finally {
+ dir.close();
+ }
+ }
+
+ // here we do better, there is no current segments file, so we don't delete anything.
+ // however, if you actually go and make a commit, the next time you run indexwriter
+ // this file will be gone.
+ public void testOtherFiles2() throws Throwable {
+ Directory dir = newDirectory();
+ try {
+ // Create my own random file:
+ IndexOutput out = dir.createOutput("_a.frq", newIOContext(random()));
+ out.writeByte((byte) 42);
+ out.close();
+
+ new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random()))).close();
+
+ assertTrue(dir.fileExists("_a.frq"));
+
+ IndexWriter iw = new IndexWriter(dir,
+ newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
+ iw.addDocument(new Document());
+ iw.close();
+
+ assertFalse(dir.fileExists("_a.frq"));
+ } finally {
+ dir.close();
+ }
+ }
}
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java Mon Aug 13 13:52:46 2012
@@ -93,7 +93,7 @@ public class TestIndexWriterCommit exten
* and add docs to it.
*/
public void testCommitOnCloseAbort() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).setMaxBufferedDocs(10));
for (int i = 0; i < 14; i++) {
TestIndexWriter.addDoc(writer);
@@ -139,7 +139,9 @@ public class TestIndexWriterCommit exten
// On abort, writer in fact may write to the same
// segments_N file:
- dir.setPreventDoubleWrite(false);
+ if (dir instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)dir).setPreventDoubleWrite(false);
+ }
for(int i=0;i<12;i++) {
for(int j=0;j<17;j++) {
@@ -179,7 +181,7 @@ public class TestIndexWriterCommit exten
final String idFormat = _TestUtil.getPostingsFormat("id");
final String contentFormat = _TestUtil.getPostingsFormat("content");
assumeFalse("This test cannot run with Memory codec", idFormat.equals("Memory") || contentFormat.equals("Memory"));
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
Analyzer analyzer;
if (random().nextBoolean()) {
// no payloads
@@ -258,11 +260,13 @@ public class TestIndexWriterCommit exten
* and close().
*/
public void testCommitOnCloseForceMerge() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
// Must disable throwing exc on double-write: this
// test uses IW.rollback which easily results in
// writing to same file more than once
- dir.setPreventDoubleWrite(false);
+ if (dir instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)dir).setPreventDoubleWrite(false);
+ }
IndexWriter writer = new IndexWriter(
dir,
newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())).
@@ -543,8 +547,10 @@ public class TestIndexWriterCommit exten
// LUCENE-1274: test writer.prepareCommit()
public void testPrepareCommitRollback() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
- dir.setPreventDoubleWrite(false);
+ Directory dir = newDirectory();
+ if (dir instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)dir).setPreventDoubleWrite(false);
+ }
IndexWriter writer = new IndexWriter(
dir,
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterDelete.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterDelete.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterDelete.java Mon Aug 13 13:52:46 2012
@@ -426,7 +426,7 @@ public class TestIndexWriterDelete exten
int END_COUNT = 144;
// First build up a starting index:
- MockDirectoryWrapper startDir = newDirectory();
+ MockDirectoryWrapper startDir = newMockDirectory();
// TODO: find the resource leak that only occurs sometimes here.
startDir.setNoDeleteOpenFile(false);
IndexWriter writer = new IndexWriter(startDir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
@@ -689,7 +689,7 @@ public class TestIndexWriterDelete exten
"Venice has lots of canals" };
String[] text = { "Amsterdam", "Venice" };
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter modifier = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)).setMaxBufferedDeleteTerms(2).setReaderPooling(false).setMergePolicy(newLogMergePolicy()));
@@ -814,7 +814,7 @@ public class TestIndexWriterDelete exten
"Venice has lots of canals" };
String[] text = { "Amsterdam", "Venice" };
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter modifier = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
modifier.commit();
dir.failOn(failure.reset());
@@ -891,9 +891,12 @@ public class TestIndexWriterDelete exten
}
public void testIndexingThenDeleting() throws Exception {
+ // TODO: move this test to its own class and just @SuppressCodecs?
+ // TODO: is it enough to just use newFSDirectory?
final String fieldFormat = _TestUtil.getPostingsFormat("field");
assumeFalse("This test cannot run with Memory codec", fieldFormat.equals("Memory"));
assumeFalse("This test cannot run with SimpleText codec", fieldFormat.equals("SimpleText"));
+ assumeFalse("This test cannot run with Direct codec", fieldFormat.equals("Direct"));
final Random r = random();
Directory dir = newDirectory();
// note this test explicitly disables payloads
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java Mon Aug 13 13:52:46 2012
@@ -36,6 +36,7 @@ import org.apache.lucene.index.IndexWrit
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.PhraseQuery;
+import org.apache.lucene.store.BaseDirectoryWrapper;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.IOContext;
import org.apache.lucene.store.IndexInput;
@@ -221,7 +222,7 @@ public class TestIndexWriterExceptions e
if (VERBOSE) {
System.out.println("\nTEST: start testRandomExceptions");
}
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
MockAnalyzer analyzer = new MockAnalyzer(random());
analyzer.setEnableChecks(false); // disable workflow checking as we forcefully close() in exceptional cases.
@@ -265,7 +266,7 @@ public class TestIndexWriterExceptions e
}
public void testRandomExceptionsThreads() throws Throwable {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
MockAnalyzer analyzer = new MockAnalyzer(random());
analyzer.setEnableChecks(false); // disable workflow checking as we forcefully close() in exceptional cases.
MockIndexWriter writer = new MockIndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, analyzer)
@@ -506,7 +507,7 @@ public class TestIndexWriterExceptions e
new BytesRef(t.text()),
MultiFields.getLiveDocs(reader),
null,
- false);
+ 0);
int count = 0;
while(tdocs.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
@@ -556,7 +557,7 @@ public class TestIndexWriterExceptions e
// LUCENE-1072: make sure an errant exception on flushing
// one segment only takes out those docs in that one flush
public void testDocumentsWriterAbort() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
FailOnlyOnFlush failure = new FailOnlyOnFlush();
failure.setDoFail();
dir.failOn(failure);
@@ -597,7 +598,7 @@ public class TestIndexWriterExceptions e
if (VERBOSE) {
System.out.println("TEST: cycle i=" + i);
}
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, analyzer).setMergePolicy(newLogMergePolicy()));
// don't allow a sudden merge to clean up the deleted
@@ -692,7 +693,7 @@ public class TestIndexWriterExceptions e
final int NUM_ITER = 100;
for(int i=0;i<2;i++) {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
{
final IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(
@@ -822,7 +823,7 @@ public class TestIndexWriterExceptions e
// LUCENE-1044: test exception during sync
public void testExceptionDuringSync() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
FailOnlyInSync failure = new FailOnlyInSync();
dir.failOn(failure);
@@ -908,7 +909,7 @@ public class TestIndexWriterExceptions e
};
for (FailOnlyInCommit failure : failures) {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
dir.setFailOnCreateOutput(false);
IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random())));
@@ -1076,7 +1077,7 @@ public class TestIndexWriterExceptions e
// latest segments file and make sure we get an
// IOException trying to open the index:
public void testSimulatedCorruptIndex1() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ BaseDirectoryWrapper dir = newDirectory();
dir.setCheckIndexOnClose(false); // we are corrupting it!
IndexWriter writer = null;
@@ -1124,7 +1125,7 @@ public class TestIndexWriterExceptions e
// files and make sure we get an IOException trying to
// open the index:
public void testSimulatedCorruptIndex2() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ BaseDirectoryWrapper dir = newDirectory();
dir.setCheckIndexOnClose(false); // we are corrupting it!
IndexWriter writer = null;
@@ -1174,8 +1175,10 @@ public class TestIndexWriterExceptions e
// gracefully fallback to the previous segments file),
// and that we can add to the index:
public void testSimulatedCrashedWriter() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
- dir.setPreventDoubleWrite(false);
+ Directory dir = newDirectory();
+ if (dir instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)dir).setPreventDoubleWrite(false);
+ }
IndexWriter writer = null;
@@ -1240,7 +1243,7 @@ public class TestIndexWriterExceptions e
int num = atLeast(1);
for (int j = 0; j < num; j++) {
for (FailOnTermVectors failure : failures) {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(random())));
dir.failOn(failure);
@@ -1539,4 +1542,73 @@ public class TestIndexWriterExceptions e
iw.close();
dir.close();
}
+
+ public void testBoostOmitNorms() throws Exception {
+ Directory dir = newDirectory();
+ IndexWriterConfig iwc = new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
+ iwc.setMergePolicy(newLogMergePolicy());
+ IndexWriter iw = new IndexWriter(dir, iwc);
+ Document doc = new Document();
+ doc.add(new StringField("field1", "sometext", Field.Store.YES));
+ doc.add(new TextField("field2", "sometext", Field.Store.NO));
+ doc.add(new StringField("foo", "bar", Field.Store.NO));
+ iw.addDocument(doc); // add an 'ok' document
+ try {
+ doc = new Document();
+ // try to boost with norms omitted
+ List<IndexableField> list = new ArrayList<IndexableField>();
+ list.add(new IndexableField() {
+
+ @Override
+ public String name() {
+ return "foo";
+ }
+
+ @Override
+ public IndexableFieldType fieldType() {
+ return StringField.TYPE_NOT_STORED;
+ }
+
+ @Override
+ public float boost() {
+ return 5f;
+ }
+
+ @Override
+ public BytesRef binaryValue() {
+ return null;
+ }
+
+ @Override
+ public String stringValue() {
+ return "baz";
+ }
+
+ @Override
+ public Reader readerValue() {
+ return null;
+ }
+
+ @Override
+ public Number numericValue() {
+ return null;
+ }
+
+ @Override
+ public TokenStream tokenStream(Analyzer analyzer) throws IOException {
+ return null;
+ }
+ });
+ iw.addDocument(list);
+ fail("didn't get any exception, boost silently discarded");
+ } catch (UnsupportedOperationException expected) {
+ // expected
+ }
+ DirectoryReader ir = DirectoryReader.open(iw, false);
+ assertEquals(1, ir.numDocs());
+ assertEquals("sometext", ir.document(0).get("field1"));
+ ir.close();
+ iw.close();
+ dir.close();
+ }
}
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterForceMerge.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterForceMerge.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterForceMerge.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterForceMerge.java Mon Aug 13 13:52:46 2012
@@ -31,7 +31,7 @@ import org.apache.lucene.util._TestUtil;
public class TestIndexWriterForceMerge extends LuceneTestCase {
public void testPartialMerge() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
final Document doc = new Document();
doc.add(newStringField("content", "aaa", Field.Store.NO));
@@ -72,7 +72,7 @@ public class TestIndexWriterForceMerge e
}
public void testMaxNumSegments2() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ Directory dir = newDirectory();
final Document doc = new Document();
doc.add(newStringField("content", "aaa", Field.Store.NO));
@@ -121,7 +121,7 @@ public class TestIndexWriterForceMerge e
*/
public void testForceMergeTempSpaceUsage() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).setMaxBufferedDocs(10).setMergePolicy(newLogMergePolicy()));
if (VERBOSE) {
System.out.println("TEST: config1=" + writer.getConfig());
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java Mon Aug 13 13:52:46 2012
@@ -182,7 +182,7 @@ public class TestIndexWriterOnDiskFull e
// Now, build a starting index that has START_COUNT docs. We
// will then try to addIndexes into a copy of this:
- MockDirectoryWrapper startDir = newDirectory();
+ MockDirectoryWrapper startDir = newMockDirectory();
IndexWriter writer = new IndexWriter(startDir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
for(int j=0;j<START_COUNT;j++) {
addDocWithIndex(writer, j);
@@ -476,7 +476,7 @@ public class TestIndexWriterOnDiskFull e
// LUCENE-2593
public void testCorruptionAfterDiskFullDuringMerge() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
//IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)).setReaderPooling(true));
IndexWriter w = new IndexWriter(
dir,
@@ -520,14 +520,12 @@ public class TestIndexWriterOnDiskFull e
// an IndexWriter (hit during DW.ThreadState.init()) is
// OK:
public void testImmediateDiskFull() throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()))
.setMaxBufferedDocs(2).setMergeScheduler(new ConcurrentMergeScheduler()));
dir.setMaxSizeInBytes(Math.max(1, dir.getRecomputedActualSizeInBytes()));
final Document doc = new Document();
FieldType customType = new FieldType(TextField.TYPE_STORED);
- customType.setStoreTermVectorPositions(true);
- customType.setStoreTermVectorOffsets(true);
doc.add(newField("field", "aaa bbb ccc ddd eee fff ggg hhh iii jjj", customType));
try {
writer.addDocument(doc);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnJRECrash.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnJRECrash.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnJRECrash.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnJRECrash.java Mon Aug 13 13:52:46 2012
@@ -27,9 +27,7 @@ import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
-import org.apache.lucene.codecs.Codec;
-import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockDirectoryWrapper;
+import org.apache.lucene.store.BaseDirectoryWrapper;
import org.apache.lucene.util.Constants;
import org.apache.lucene.util._TestUtil;
@@ -134,7 +132,7 @@ public class TestIndexWriterOnJRECrash e
*/
public boolean checkIndexes(File file) throws IOException {
if (file.isDirectory()) {
- MockDirectoryWrapper dir = newFSDirectory(file);
+ BaseDirectoryWrapper dir = newFSDirectory(file);
dir.setCheckIndexOnClose(false); // don't double-checkindex
if (DirectoryReader.indexExists(dir)) {
if (VERBOSE) {
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java Mon Aug 13 13:52:46 2012
@@ -53,7 +53,7 @@ public class TestIndexWriterReader exten
t.field(), new BytesRef(t.text()),
MultiFields.getLiveDocs(r),
null,
- false);
+ 0);
if (td != null) {
while (td.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
@@ -708,7 +708,7 @@ public class TestIndexWriterReader exten
// Stress test reopen during addIndexes
public void testDuringAddIndexes() throws Exception {
- MockDirectoryWrapper dir1 = newDirectory();
+ Directory dir1 = newDirectory();
final IndexWriter writer = new IndexWriter(
dir1,
newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random())).
@@ -781,8 +781,10 @@ public class TestIndexWriterReader exten
assertEquals(0, excs.size());
r.close();
- final Collection<String> openDeletedFiles = dir1.getOpenDeletedFiles();
- assertEquals("openDeleted=" + openDeletedFiles, 0, openDeletedFiles.size());
+ if (dir1 instanceof MockDirectoryWrapper) {
+ final Collection<String> openDeletedFiles = ((MockDirectoryWrapper)dir1).getOpenDeletedFiles();
+ assertEquals("openDeleted=" + openDeletedFiles, 0, openDeletedFiles.size());
+ }
writer.close();
@@ -976,7 +978,7 @@ public class TestIndexWriterReader exten
// Don't proceed if picked Codec is in the list of illegal ones.
final String format = _TestUtil.getPostingsFormat("f");
assumeFalse("Format: " + format + " does not support ReaderTermsIndexDivisor!",
- (format.equals("SimpleText") || format.equals("Memory")));
+ (format.equals("SimpleText") || format.equals("Memory") || format.equals("Direct")));
Directory dir = newDirectory();
IndexWriter w = new IndexWriter(dir, conf);
@@ -985,7 +987,7 @@ public class TestIndexWriterReader exten
w.addDocument(doc);
SegmentReader r = getOnlySegmentReader(DirectoryReader.open(w, true));
try {
- _TestUtil.docs(random(), r, "f", new BytesRef("val"), null, null, false);
+ _TestUtil.docs(random(), r, "f", new BytesRef("val"), null, null, 0);
fail("should have failed to seek since terms index was not loaded.");
} catch (IllegalStateException e) {
// expected - we didn't load the term index
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterWithThreads.java Mon Aug 13 13:52:46 2012
@@ -31,6 +31,7 @@ import org.apache.lucene.document.FieldT
import org.apache.lucene.document.TextField;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.store.AlreadyClosedException;
+import org.apache.lucene.store.BaseDirectoryWrapper;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.MockDirectoryWrapper;
import org.apache.lucene.util.Bits;
@@ -130,7 +131,7 @@ public class TestIndexWriterWithThreads
if (VERBOSE) {
System.out.println("\nTEST: iter=" + iter);
}
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter writer = new IndexWriter(
dir,
newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())).
@@ -223,7 +224,7 @@ public class TestIndexWriterWithThreads
new BytesRef("aaa"),
MultiFields.getLiveDocs(reader),
null,
- false);
+ 0);
int count = 0;
while(tdocs.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) {
count++;
@@ -245,7 +246,7 @@ public class TestIndexWriterWithThreads
if (VERBOSE) {
System.out.println("TEST: iter=" + iter);
}
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter writer = new IndexWriter(
dir,
@@ -302,7 +303,7 @@ public class TestIndexWriterWithThreads
// Runs test, with one thread, using the specific failure
// to trigger an IOException
public void _testSingleThreadFailure(MockDirectoryWrapper.Failure failure) throws IOException {
- MockDirectoryWrapper dir = newDirectory();
+ MockDirectoryWrapper dir = newMockDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random()))
.setMaxBufferedDocs(2).setMergeScheduler(new ConcurrentMergeScheduler()));
@@ -435,7 +436,7 @@ public class TestIndexWriterWithThreads
// and closes before the second IndexWriter time's out trying to get the Lock,
// we should see both documents
public void testOpenTwoIndexWritersOnDifferentThreads() throws IOException, InterruptedException {
- final MockDirectoryWrapper dir = newDirectory();
+ final Directory dir = newDirectory();
CountDownLatch oneIWConstructed = new CountDownLatch(1);
DelayedIndexAndCloseRunnable thread1 = new DelayedIndexAndCloseRunnable(
dir, oneIWConstructed);
@@ -503,8 +504,10 @@ public class TestIndexWriterWithThreads
// LUCENE-4147
public void testRollbackAndCommitWithThreads() throws Exception {
- final MockDirectoryWrapper d = newFSDirectory(_TestUtil.getTempDir("RollbackAndCommitWithThreads"));
- d.setPreventDoubleWrite(false);
+ final BaseDirectoryWrapper d = newFSDirectory(_TestUtil.getTempDir("RollbackAndCommitWithThreads"));
+ if (d instanceof MockDirectoryWrapper) {
+ ((MockDirectoryWrapper)d).setPreventDoubleWrite(false);
+ }
final int threadCount = _TestUtil.nextInt(random(), 2, 6);
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java Mon Aug 13 13:52:46 2012
@@ -60,17 +60,22 @@ public class TestIndexableField extends
@Override
public boolean storeTermVectors() {
- return counter % 2 == 1 && counter % 10 != 9;
+ return indexed() && counter % 2 == 1 && counter % 10 != 9;
}
@Override
public boolean storeTermVectorOffsets() {
- return counter % 2 == 1 && counter % 10 != 9;
+ return storeTermVectors() && counter % 10 != 9;
}
@Override
public boolean storeTermVectorPositions() {
- return counter % 2 == 1 && counter % 10 != 9;
+ return storeTermVectors() && counter % 10 != 9;
+ }
+
+ @Override
+ public boolean storeTermVectorPayloads() {
+ return storeTermVectors() && counter % 10 != 9;
}
@Override
@@ -264,14 +269,14 @@ public class TestIndexableField extends
TermsEnum termsEnum = tfv.iterator(null);
assertEquals(new BytesRef(""+counter), termsEnum.next());
assertEquals(1, termsEnum.totalTermFreq());
- DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, false);
+ DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
assertTrue(dpEnum.nextDoc() != DocIdSetIterator.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, false);
+ dpEnum = termsEnum.docsAndPositions(null, dpEnum);
assertTrue(dpEnum.nextDoc() != DocIdSetIterator.NO_MORE_DOCS);
assertEquals(1, dpEnum.freq());
assertEquals(0, dpEnum.nextPosition());
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLazyProxSkipping.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLazyProxSkipping.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLazyProxSkipping.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLazyProxSkipping.java Mon Aug 13 13:52:46 2012
@@ -128,12 +128,14 @@ public class TestLazyProxSkipping extend
// check if the number of calls of seek() does not exceed the number of hits
assertTrue(this.seeksCounter > 0);
assertTrue("seeksCounter=" + this.seeksCounter + " numHits=" + numHits, this.seeksCounter <= numHits + 1);
+ searcher.getIndexReader().close();
}
public void testLazySkipping() throws IOException {
final String fieldFormat = _TestUtil.getPostingsFormat(this.field);
- assumeFalse("This test cannot run with Memory codec", fieldFormat.equals("Memory"));
- assumeFalse("This test cannot run with SimpleText codec", fieldFormat.equals("SimpleText"));
+ assumeFalse("This test cannot run with Memory postings format", fieldFormat.equals("Memory"));
+ assumeFalse("This test cannot run with Direct postings format", fieldFormat.equals("Direct"));
+ assumeFalse("This test cannot run with SimpleText postings format", fieldFormat.equals("SimpleText"));
// test whether only the minimum amount of seeks()
// are performed
@@ -156,8 +158,7 @@ public class TestLazyProxSkipping extend
DocsAndPositionsEnum tp = MultiFields.getTermPositionsEnum(reader,
MultiFields.getLiveDocs(reader),
this.field,
- new BytesRef("b"),
- false);
+ new BytesRef("b"));
for (int i = 0; i < 10; i++) {
tp.nextDoc();
@@ -168,8 +169,7 @@ public class TestLazyProxSkipping extend
tp = MultiFields.getTermPositionsEnum(reader,
MultiFields.getLiveDocs(reader),
this.field,
- new BytesRef("a"),
- false);
+ new BytesRef("a"));
for (int i = 0; i < 10; i++) {
tp.nextDoc();
Modified: lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java?rev=1372423&r1=1372422&r2=1372423&view=diff
==============================================================================
--- lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java (original)
+++ lucene/dev/branches/LUCENE-2878/lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java Mon Aug 13 13:52:46 2012
@@ -37,7 +37,7 @@ import org.apache.lucene.util.LuceneTest
import org.apache.lucene.util.FixedBitSet;
import org.apache.lucene.util._TestUtil;
-@SuppressCodecs({ "SimpleText", "Memory" })
+@SuppressCodecs({ "SimpleText", "Memory", "Direct" })
public class TestLongPostings extends LuceneTestCase {
// Produces a realistic unicode random string that
@@ -170,7 +170,7 @@ public class TestLongPostings extends Lu
System.out.println("\nTEST: iter=" + iter + " doS1=" + doS1);
}
- final DocsAndPositionsEnum postings = MultiFields.getTermPositionsEnum(r, null, "field", new BytesRef(term), false);
+ final DocsAndPositionsEnum postings = MultiFields.getTermPositionsEnum(r, null, "field", new BytesRef(term));
int docID = -1;
while(docID < DocIdSetIterator.NO_MORE_DOCS) {
@@ -205,8 +205,11 @@ public class TestLongPostings extends Lu
assertTrue(freq >=1 && freq <= 4);
for(int pos=0;pos<freq;pos++) {
assertEquals(pos, postings.nextPosition());
- if (random().nextBoolean() && postings.hasPayload()) {
+ if (random().nextBoolean()) {
postings.getPayload();
+ if (random().nextBoolean()) {
+ postings.getPayload(); // get it again
+ }
}
}
}
@@ -247,8 +250,11 @@ public class TestLongPostings extends Lu
assertTrue(freq >=1 && freq <= 4);
for(int pos=0;pos<freq;pos++) {
assertEquals(pos, postings.nextPosition());
- if (random().nextBoolean() && postings.hasPayload()) {
+ if (random().nextBoolean()) {
postings.getPayload();
+ if (random().nextBoolean()) {
+ postings.getPayload(); // get it again
+ }
}
}
}
@@ -368,10 +374,10 @@ public class TestLongPostings extends Lu
final DocsEnum postings;
if (options == IndexOptions.DOCS_ONLY) {
- docs = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, false);
+ docs = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, 0);
postings = null;
} else {
- docs = postings = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, true);
+ docs = postings = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, DocsEnum.FLAG_FREQS);
assert postings != null;
}
assert docs != null;