summaryrefslogtreecommitdiff
path: root/core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java')
-rw-r--r--core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java116
1 files changed, 11 insertions, 105 deletions
diff --git a/core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java b/core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java
index 2b08213ab4..6b117fc7e9 100644
--- a/core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java
+++ b/core/src/test/java/org/elasticsearch/deps/lucene/SimpleLuceneTests.java
@@ -21,24 +21,19 @@ package org.elasticsearch.deps.lucene;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.LegacyIntField;
+import org.apache.lucene.document.IntPoint;
import org.apache.lucene.document.SortedDocValuesField;
+import org.apache.lucene.document.StoredField;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.FieldInfo;
-import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.IndexableField;
-import org.apache.lucene.index.LeafReader;
-import org.apache.lucene.index.PostingsEnum;
-import org.apache.lucene.index.SlowCompositeReaderWrapper;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.StoredFieldVisitor;
import org.apache.lucene.index.Term;
-import org.apache.lucene.index.Terms;
-import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.search.FieldDoc;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.MatchAllDocsQuery;
@@ -50,8 +45,6 @@ import org.apache.lucene.search.TopFieldDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.util.BytesRef;
-import org.apache.lucene.util.BytesRefBuilder;
-import org.apache.lucene.util.LegacyNumericUtils;
import org.elasticsearch.common.lucene.Lucene;
import org.elasticsearch.test.ESTestCase;
@@ -71,7 +64,7 @@ public class SimpleLuceneTests extends ESTestCase {
document.add(new SortedDocValuesField("str", new BytesRef(text)));
indexWriter.addDocument(document);
}
- IndexReader reader = SlowCompositeReaderWrapper.wrap(DirectoryReader.open(indexWriter));
+ IndexReader reader = DirectoryReader.open(indexWriter);
IndexSearcher searcher = new IndexSearcher(reader);
TopFieldDocs docs = searcher.search(new MatchAllDocsQuery(), 10, new Sort(new SortField("str", SortField.Type.STRING)));
for (int i = 0; i < 10; i++) {
@@ -86,7 +79,8 @@ public class SimpleLuceneTests extends ESTestCase {
Document document = new Document();
document.add(new TextField("_id", "1", Field.Store.YES));
- document.add(new LegacyIntField("test", 2, LegacyIntField.TYPE_STORED));
+ document.add(new IntPoint("test", 2));
+ document.add(new StoredField("test", 2));
indexWriter.addDocument(document);
IndexReader reader = DirectoryReader.open(indexWriter);
@@ -94,11 +88,9 @@ public class SimpleLuceneTests extends ESTestCase {
TopDocs topDocs = searcher.search(new TermQuery(new Term("_id", "1")), 1);
Document doc = searcher.doc(topDocs.scoreDocs[0].doc);
IndexableField f = doc.getField("test");
- assertThat(f.stringValue(), equalTo("2"));
+ assertThat(f.numericValue(), equalTo(2));
- BytesRefBuilder bytes = new BytesRefBuilder();
- LegacyNumericUtils.intToPrefixCoded(2, 0, bytes);
- topDocs = searcher.search(new TermQuery(new Term("test", bytes.get())), 1);
+ topDocs = searcher.search(IntPoint.newExactQuery("test", 2), 1);
doc = searcher.doc(topDocs.scoreDocs[0].doc);
f = doc.getField("test");
assertThat(f.stringValue(), equalTo("2"));
@@ -139,40 +131,6 @@ public class SimpleLuceneTests extends ESTestCase {
indexWriter.close();
}
- public void testBoost() throws Exception {
- Directory dir = new RAMDirectory();
- IndexWriter indexWriter = new IndexWriter(dir, new IndexWriterConfig(Lucene.STANDARD_ANALYZER));
-
- for (int i = 0; i < 100; i++) {
- // TODO (just setting the boost value does not seem to work...)
- StringBuilder value = new StringBuilder().append("value");
- for (int j = 0; j < i; j++) {
- value.append(" ").append("value");
- }
- Document document = new Document();
- TextField textField = new TextField("_id", Integer.toString(i), Field.Store.YES);
- textField.setBoost(i);
- document.add(textField);
- textField = new TextField("value", value.toString(), Field.Store.YES);
- textField.setBoost(i);
- document.add(textField);
- indexWriter.addDocument(document);
- }
-
- IndexReader reader = DirectoryReader.open(indexWriter);
- IndexSearcher searcher = new IndexSearcher(reader);
- TermQuery query = new TermQuery(new Term("value", "value"));
- TopDocs topDocs = searcher.search(query, 100);
- assertThat(100, equalTo(topDocs.totalHits));
- for (int i = 0; i < topDocs.scoreDocs.length; i++) {
- Document doc = searcher.doc(topDocs.scoreDocs[i].doc);
-// System.out.println(doc.get("id") + ": " + searcher.explain(query, topDocs.scoreDocs[i].doc));
- assertThat(doc.get("_id"), equalTo(Integer.toString(100 - i - 1)));
- }
-
- indexWriter.close();
- }
-
public void testNRTSearchOnClosedWriter() throws Exception {
Directory dir = new RAMDirectory();
IndexWriter indexWriter = new IndexWriter(dir, new IndexWriterConfig(Lucene.STANDARD_ANALYZER));
@@ -181,7 +139,6 @@ public class SimpleLuceneTests extends ESTestCase {
for (int i = 0; i < 100; i++) {
Document document = new Document();
TextField field = new TextField("_id", Integer.toString(i), Field.Store.YES);
- field.setBoost(i);
document.add(field);
indexWriter.addDocument(document);
}
@@ -189,60 +146,9 @@ public class SimpleLuceneTests extends ESTestCase {
indexWriter.close();
- TermsEnum termDocs = SlowCompositeReaderWrapper.wrap(reader).terms("_id").iterator();
- termDocs.next();
- }
-
- /**
- * A test just to verify that term freqs are not stored for numeric fields. <tt>int1</tt> is not storing termFreq
- * and <tt>int2</tt> does.
- */
- public void testNumericTermDocsFreqs() throws Exception {
- Directory dir = new RAMDirectory();
- IndexWriter indexWriter = new IndexWriter(dir, new IndexWriterConfig(Lucene.STANDARD_ANALYZER));
-
- Document doc = new Document();
- FieldType type = LegacyIntField.TYPE_NOT_STORED;
- LegacyIntField field = new LegacyIntField("int1", 1, type);
- doc.add(field);
-
- type = new FieldType(LegacyIntField.TYPE_NOT_STORED);
- type.setIndexOptions(IndexOptions.DOCS_AND_FREQS);
- type.freeze();
-
- field = new LegacyIntField("int1", 1, type);
- doc.add(field);
-
- field = new LegacyIntField("int2", 1, type);
- doc.add(field);
-
- field = new LegacyIntField("int2", 1, type);
- doc.add(field);
-
- indexWriter.addDocument(doc);
-
- IndexReader reader = DirectoryReader.open(indexWriter);
- LeafReader atomicReader = SlowCompositeReaderWrapper.wrap(reader);
-
- Terms terms = atomicReader.terms("int1");
- TermsEnum termsEnum = terms.iterator();
- termsEnum.next();
-
- PostingsEnum termDocs = termsEnum.postings(null);
- assertThat(termDocs.nextDoc(), equalTo(0));
- assertThat(termDocs.docID(), equalTo(0));
- assertThat(termDocs.freq(), equalTo(1));
-
- terms = atomicReader.terms("int2");
- termsEnum = terms.iterator();
- termsEnum.next();
- termDocs = termsEnum.postings(termDocs);
- assertThat(termDocs.nextDoc(), equalTo(0));
- assertThat(termDocs.docID(), equalTo(0));
- assertThat(termDocs.freq(), equalTo(2));
-
- reader.close();
- indexWriter.close();
+ for (LeafReaderContext leaf : reader.leaves()) {
+ leaf.reader().terms("_id").iterator().next();
+ }
}
private DirectoryReader refreshReader(DirectoryReader reader) throws IOException {