You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2014/11/27 12:34:48 UTC
svn commit: r1642110 [7/12] - in /lucene/dev/branches/lucene6005/lucene:
analysis/uima/src/test/org/apache/lucene/analysis/uima/
backward-codecs/src/test/org/apache/lucene/index/
benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/ benchmark/sr...
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheReopen.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheReopen.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheReopen.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheReopen.java Thu Nov 27 11:34:43 2014
@@ -18,12 +18,13 @@ package org.apache.lucene.uninverting;
*/
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.IntField;
-import org.apache.lucene.index.LeafReader;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReader;
import org.apache.lucene.index.NumericDocValues;
import org.apache.lucene.store.Directory;
import org.apache.lucene.util.LuceneTestCase;
@@ -42,15 +43,18 @@ public class TestFieldCacheReopen extend
newIndexWriterConfig(new MockAnalyzer(random())).
setMergePolicy(newLogMergePolicy(10))
);
- Document doc = new Document();
- doc.add(new IntField("number", 17, Field.Store.NO));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("number");
+
+ Document2 doc = writer.newDocument();
+ doc.addInt("number", 17);
writer.addDocument(doc);
writer.commit();
// Open reader1
DirectoryReader r = DirectoryReader.open(dir);
LeafReader r1 = getOnlySegmentReader(r);
- final NumericDocValues ints = FieldCache.DEFAULT.getNumerics(r1, "number", FieldCache.NUMERIC_UTILS_INT_PARSER, false);
+ final NumericDocValues ints = FieldCache.DEFAULT.getNumerics(r1, "number", FieldCache.DOCUMENT2_INT_PARSER, false);
assertEquals(17, ints.get(0));
// Add new segment
@@ -62,7 +66,7 @@ public class TestFieldCacheReopen extend
assertNotNull(r2);
r.close();
LeafReader sub0 = r2.leaves().get(0).reader();
- final NumericDocValues ints2 = FieldCache.DEFAULT.getNumerics(sub0, "number", FieldCache.NUMERIC_UTILS_INT_PARSER, false);
+ final NumericDocValues ints2 = FieldCache.DEFAULT.getNumerics(sub0, "number", FieldCache.DOCUMENT2_INT_PARSER, false);
r2.close();
assertTrue(ints == ints2);
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSanityChecker.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSanityChecker.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSanityChecker.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSanityChecker.java Thu Nov 27 11:34:43 2014
@@ -19,15 +19,13 @@ package org.apache.lucene.uninverting;
import java.io.IOException;
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.DoubleField;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FloatField;
-import org.apache.lucene.document.IntField;
-import org.apache.lucene.document.LongField;
-import org.apache.lucene.index.LeafReader;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReader;
import org.apache.lucene.index.MultiReader;
import org.apache.lucene.index.SlowCompositeReaderWrapper;
import org.apache.lucene.store.Directory;
@@ -51,21 +49,37 @@ public class TestFieldCacheSanityChecker
dirB = newDirectory();
IndexWriter wA = new IndexWriter(dirA, newIndexWriterConfig(new MockAnalyzer(random())));
+ FieldTypes fieldTypes = wA.getFieldTypes();
+ fieldTypes.disableSorting("theLong");
+ fieldTypes.disableSorting("theDouble");
+ fieldTypes.disableSorting("theInt");
+ fieldTypes.disableSorting("thedFloatLong");
+
IndexWriter wB = new IndexWriter(dirB, newIndexWriterConfig(new MockAnalyzer(random())));
+ fieldTypes = wB.getFieldTypes();
+ fieldTypes.disableSorting("theLong");
+ fieldTypes.disableSorting("theDouble");
+ fieldTypes.disableSorting("theInt");
+ fieldTypes.disableSorting("thedFloatLong");
long theLong = Long.MAX_VALUE;
double theDouble = Double.MAX_VALUE;
int theInt = Integer.MAX_VALUE;
float theFloat = Float.MAX_VALUE;
for (int i = 0; i < NUM_DOCS; i++){
- Document doc = new Document();
- doc.add(new LongField("theLong", theLong--, Field.Store.NO));
- doc.add(new DoubleField("theDouble", theDouble--, Field.Store.NO));
- doc.add(new IntField("theInt", theInt--, Field.Store.NO));
- doc.add(new FloatField("theFloat", theFloat--, Field.Store.NO));
if (0 == i % 3) {
+ Document2 doc = wA.newDocument();
+ doc.addLong("theLong", theLong--);
+ doc.addDouble("theDouble", theDouble--);
+ doc.addInt("theInt", theInt--);
+ doc.addFloat("theFloat", theFloat--);
wA.addDocument(doc);
} else {
+ Document2 doc = wB.newDocument();
+ doc.addLong("theLong", theLong--);
+ doc.addDouble("theDouble", theDouble--);
+ doc.addInt("theInt", theInt--);
+ doc.addFloat("theFloat", theFloat--);
wB.addDocument(doc);
}
}
@@ -94,11 +108,11 @@ public class TestFieldCacheSanityChecker
FieldCache cache = FieldCache.DEFAULT;
cache.purgeAllCaches();
- cache.getNumerics(readerA, "theDouble", FieldCache.NUMERIC_UTILS_DOUBLE_PARSER, false);
- cache.getNumerics(readerAclone, "theDouble", FieldCache.NUMERIC_UTILS_DOUBLE_PARSER, false);
- cache.getNumerics(readerB, "theDouble", FieldCache.NUMERIC_UTILS_DOUBLE_PARSER, false);
+ cache.getNumerics(readerA, "theDouble", FieldCache.DOCUMENT2_DOUBLE_PARSER, false);
+ cache.getNumerics(readerAclone, "theDouble", FieldCache.DOCUMENT2_DOUBLE_PARSER, false);
+ cache.getNumerics(readerB, "theDouble", FieldCache.DOCUMENT2_DOUBLE_PARSER, false);
- cache.getNumerics(readerX, "theInt", FieldCache.NUMERIC_UTILS_INT_PARSER, false);
+ cache.getNumerics(readerX, "theInt", FieldCache.DOCUMENT2_INT_PARSER, false);
// // //
@@ -117,7 +131,7 @@ public class TestFieldCacheSanityChecker
FieldCache cache = FieldCache.DEFAULT;
cache.purgeAllCaches();
- cache.getNumerics(readerX, "theInt", FieldCache.NUMERIC_UTILS_INT_PARSER, false);
+ cache.getNumerics(readerX, "theInt", FieldCache.DOCUMENT2_INT_PARSER, false);
cache.getTerms(readerX, "theInt", false);
// // //
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSort.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSort.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSort.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSort.java Thu Nov 27 11:34:43 2014
@@ -23,14 +23,13 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.DoubleField;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FloatField;
-import org.apache.lucene.document.IntField;
-import org.apache.lucene.document.LongField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.document.StringField;
import org.apache.lucene.index.DirectoryReader;
+import org.apache.lucene.index.DocValuesType;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
@@ -68,11 +67,15 @@ public class TestFieldCacheSort extends
private void testString(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.setDocValuesType("value", DocValuesType.NONE);
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -105,13 +108,16 @@ public class TestFieldCacheSort extends
private void testStringMissing(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -144,11 +150,13 @@ public class TestFieldCacheSort extends
private void testStringReverse(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -181,13 +189,16 @@ public class TestFieldCacheSort extends
private void testStringMissingSortedFirst(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -222,13 +233,16 @@ public class TestFieldCacheSort extends
private void testStringMissingSortedFirstReverse(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -263,13 +277,16 @@ public class TestFieldCacheSort extends
private void testStringMissingSortedLast(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -305,13 +322,15 @@ public class TestFieldCacheSort extends
private void testStringMissingSortedLastReverse(SortField.Type sortType) throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Type type = sortType == SortField.Type.STRING ? Type.SORTED : Type.BINARY;
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
@@ -338,11 +357,13 @@ public class TestFieldCacheSort extends
public void testFieldDoc() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.NO));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.NO));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
IndexReader ir = writer.getReader();
writer.close();
@@ -364,11 +385,14 @@ public class TestFieldCacheSort extends
public void testFieldDocReverse() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.NO));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.NO));
+ doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
IndexReader ir = writer.getReader();
writer.close();
@@ -390,11 +414,11 @@ public class TestFieldCacheSort extends
public void testFieldScore() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newTextField("value", "foo bar bar bar bar", Field.Store.NO));
+ Document2 doc = writer.newDocument();
+ doc.addLargeText("value", "foo bar bar bar bar");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newTextField("value", "foo foo foo foo foo", Field.Store.NO));
+ doc = writer.newDocument();
+ doc.addLargeText("value", "foo foo foo foo foo");
writer.addDocument(doc);
IndexReader ir = writer.getReader();
writer.close();
@@ -420,11 +444,11 @@ public class TestFieldCacheSort extends
public void testFieldScoreReverse() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newTextField("value", "foo bar bar bar bar", Field.Store.NO));
+ Document2 doc = writer.newDocument();
+ doc.addLargeText("value", "foo bar bar bar bar");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newTextField("value", "foo foo foo foo foo", Field.Store.NO));
+ doc = writer.newDocument();
+ doc.addLargeText("value", "foo foo foo foo foo");
writer.addDocument(doc);
IndexReader ir = writer.getReader();
writer.close();
@@ -449,14 +473,16 @@ public class TestFieldCacheSort extends
public void testInt() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new IntField("value", 300000, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addInt("value", 300000);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.INTEGER));
@@ -468,9 +494,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// numeric order
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("300000", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("300000", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -480,13 +506,15 @@ public class TestFieldCacheSort extends
public void testIntMissing() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.INTEGER));
@@ -498,9 +526,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// null is treated as a 0
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
assertNull(searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("4", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -510,13 +538,15 @@ public class TestFieldCacheSort extends
public void testIntMissingLast() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.INTEGER));
@@ -530,8 +560,8 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// null is treated as a Integer.MAX_VALUE
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
assertNull(searcher.doc(td.scoreDocs[2].doc).getString("value"));
TestUtil.checkReader(ir);
ir.close();
@@ -542,14 +572,16 @@ public class TestFieldCacheSort extends
public void testIntReverse() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new IntField("value", 300000, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addInt("value", 300000);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addInt("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.INTEGER));
@@ -561,9 +593,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// reverse numeric order
- assertEquals("300000", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("-1", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("300000", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("-1", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -573,14 +605,16 @@ public class TestFieldCacheSort extends
public void testLong() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new LongField("value", 3000000000L, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addLong("value", 3000000000L);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.LONG));
@@ -592,9 +626,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// numeric order
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("3000000000", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("3000000000", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -604,13 +638,15 @@ public class TestFieldCacheSort extends
public void testLongMissing() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.LONG));
@@ -622,9 +658,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// null is treated as 0
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
assertNull(searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("4", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -634,13 +670,15 @@ public class TestFieldCacheSort extends
public void testLongMissingLast() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.LONG));
@@ -654,8 +692,8 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// null is treated as Long.MAX_VALUE
- assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
+ assertEquals("-1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
assertNull(searcher.doc(td.scoreDocs[2].doc).getString("value"));
TestUtil.checkReader(ir);
ir.close();
@@ -666,14 +704,16 @@ public class TestFieldCacheSort extends
public void testLongReverse() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new LongField("value", 3000000000L, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addLong("value", 3000000000L);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", -1, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", -1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("value", 4, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addLong("value", 4);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.LONG));
@@ -685,9 +725,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// reverse numeric order
- assertEquals("3000000000", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("-1", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("3000000000", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("-1", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -697,14 +737,16 @@ public class TestFieldCacheSort extends
public void testFloat() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new FloatField("value", 30.1f, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addFloat("value", 30.1f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", -1.3f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", -1.3f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", 4.2f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", 4.2f);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.FLOAT));
@@ -716,9 +758,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// numeric order
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("30.1", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("30.1", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -728,13 +770,15 @@ public class TestFieldCacheSort extends
public void testFloatMissing() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", -1.3f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", -1.3f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", 4.2f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", 4.2f);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.FLOAT));
@@ -745,10 +789,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
- // null is treated as 0
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertNull(searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4.2", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertNull(searcher.doc(td.scoreDocs[1].doc).get("value"));
+ assertEquals("4.2", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -758,13 +801,15 @@ public class TestFieldCacheSort extends
public void testFloatMissingLast() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", -1.3f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", -1.3f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", 4.2f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", 4.2f);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.FLOAT));
@@ -778,9 +823,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// null is treated as Float.MAX_VALUE
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertNull(searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertNull(searcher.doc(td.scoreDocs[2].doc).get("value"));
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -790,14 +835,16 @@ public class TestFieldCacheSort extends
public void testFloatReverse() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new FloatField("value", 30.1f, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addFloat("value", 30.1f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", -1.3f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", -1.3f);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new FloatField("value", 4.2f, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addFloat("value", 4.2f);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.FLOAT));
@@ -809,9 +856,9 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(3, td.totalHits);
// reverse numeric order
- assertEquals("30.1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("-1.3", searcher.doc(td.scoreDocs[2].doc).getString("value"));
+ assertEquals("30.1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -821,17 +868,19 @@ public class TestFieldCacheSort extends
public void testDouble() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new DoubleField("value", 30.1, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addDouble("value", 30.1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", -1.3, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", -1.3);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333333, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333333);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333332, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333332);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.DOUBLE));
@@ -843,10 +892,10 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(4, td.totalHits);
// numeric order
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[2].doc).getString("value"));
- assertEquals("30.1", searcher.doc(td.scoreDocs[3].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
+ assertEquals("30.1", searcher.doc(td.scoreDocs[3].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -856,13 +905,15 @@ public class TestFieldCacheSort extends
public void testDoubleSignedZero() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new DoubleField("value", +0d, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addDouble("value", +0d);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", -0d, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", -0d);
writer.addDocument(doc);
- doc = new Document();
+ doc = writer.newDocument();
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.DOUBLE));
writer.close();
@@ -889,16 +940,18 @@ public class TestFieldCacheSort extends
public void testDoubleMissing() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", -1.3, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", -1.3);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333333, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333333);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333332, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333332);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.DOUBLE));
@@ -910,10 +963,10 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(4, td.totalHits);
// null treated as a 0
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
assertNull(searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[2].doc).getString("value"));
- assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[3].doc).getString("value"));
+ assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
+ assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[3].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -923,16 +976,18 @@ public class TestFieldCacheSort extends
public void testDoubleMissingLast() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", -1.3, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", -1.3);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333333, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333333);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333332, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333332);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.DOUBLE));
@@ -946,10 +1001,10 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(4, td.totalHits);
// null treated as Double.MAX_VALUE
- assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[2].doc).getString("value"));
- assertNull(searcher.doc(td.scoreDocs[3].doc).getString("value"));
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
+ assertNull(searcher.doc(td.scoreDocs[3].doc).get("value"));
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -959,17 +1014,19 @@ public class TestFieldCacheSort extends
public void testDoubleReverse() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(new DoubleField("value", 30.1, Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addDouble("value", 30.1);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", -1.3, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", -1.3);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333333, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333333);
writer.addDocument(doc);
- doc = new Document();
- doc.add(new DoubleField("value", 4.2333333333332, Field.Store.YES));
+ doc = writer.newDocument();
+ doc.addDouble("value", 4.2333333333332);
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.DOUBLE));
@@ -981,10 +1038,10 @@ public class TestFieldCacheSort extends
TopDocs td = searcher.search(new MatchAllDocsQuery(), 10, sort);
assertEquals(4, td.totalHits);
// numeric order
- assertEquals("30.1", searcher.doc(td.scoreDocs[0].doc).getString("value"));
- assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[1].doc).getString("value"));
- assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[2].doc).getString("value"));
- assertEquals("-1.3", searcher.doc(td.scoreDocs[3].doc).getString("value"));
+ assertEquals("30.1", searcher.doc(td.scoreDocs[0].doc).get("value").toString());
+ assertEquals("4.2333333333333", searcher.doc(td.scoreDocs[1].doc).get("value").toString());
+ assertEquals("4.2333333333332", searcher.doc(td.scoreDocs[2].doc).get("value").toString());
+ assertEquals("-1.3", searcher.doc(td.scoreDocs[3].doc).get("value").toString());
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -993,13 +1050,16 @@ public class TestFieldCacheSort extends
public void testEmptyStringVsNullStringSort() throws Exception {
Directory dir = newDirectory();
IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(new MockAnalyzer(random())));
- Document doc = new Document();
- doc.add(newStringField("f", "", Field.Store.NO));
- doc.add(newStringField("t", "1", Field.Store.NO));
+ FieldTypes fieldTypes = w.getFieldTypes();
+ fieldTypes.disableSorting("f");
+ fieldTypes.disableSorting("t");
+ Document2 doc = w.newDocument();
+ doc.addAtom("f", "");
+ doc.addAtom("t", "1");
w.addDocument(doc);
w.commit();
- doc = new Document();
- doc.add(newStringField("t", "1", Field.Store.NO));
+ doc = w.newDocument();
+ doc.addAtom("t", "1");
w.addDocument(doc);
IndexReader r = UninvertingReader.wrap(DirectoryReader.open(w, true),
@@ -1020,11 +1080,14 @@ public class TestFieldCacheSort extends
public void testMultiValuedField() throws IOException {
Directory indexStore = newDirectory();
IndexWriter writer = new IndexWriter(indexStore, newIndexWriterConfig(new MockAnalyzer(random())));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.setMultiValued("string");
+ fieldTypes.disableSorting("string");
for(int i=0; i<5; i++) {
- Document doc = new Document();
- doc.add(new StringField("string", "a"+i, Field.Store.NO));
- doc.add(new StringField("string", "b"+i, Field.Store.NO));
- writer.addDocument(doc);
+ Document2 doc = writer.newDocument();
+ doc.addAtom("string", "a"+i);
+ doc.addAtom("string", "b"+i);
+ writer.addDocument(doc);
}
writer.forceMerge(1); // enforce one segment to have a higher unique term count in all cases
writer.close();
@@ -1049,14 +1112,14 @@ public class TestFieldCacheSort extends
int id = 0;
for(int seg=0;seg<2;seg++) {
for(int docIDX=0;docIDX<10;docIDX++) {
- Document doc = new Document();
- doc.add(new IntField("id", docIDX, Field.Store.YES));
+ Document2 doc = w.newDocument();
+ doc.addInt("id", docIDX);
StringBuilder sb = new StringBuilder();
for(int i=0;i<id;i++) {
sb.append(' ');
sb.append("text");
}
- doc.add(newTextField("body", sb.toString(), Field.Store.NO));
+ doc.addLargeText("body", sb.toString());
w.addDocument(doc);
id++;
}
@@ -1112,8 +1175,10 @@ public class TestFieldCacheSort extends
public void testSortOneDocument() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.SORTED));
@@ -1134,8 +1199,10 @@ public class TestFieldCacheSort extends
public void testSortOneDocumentWithScores() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
IndexReader ir = UninvertingReader.wrap(writer.getReader(),
Collections.singletonMap("value", Type.SORTED));
@@ -1159,13 +1226,16 @@ public class TestFieldCacheSort extends
public void testSortTwoFields() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("tievalue", "tied", Field.Store.NO));
- doc.add(newStringField("value", "foo", Field.Store.YES));
- writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("tievalue", "tied", Field.Store.NO));
- doc.add(newStringField("value", "bar", Field.Store.YES));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("value");
+ fieldTypes.disableSorting("tievalue");
+ Document2 doc = writer.newDocument();
+ doc.addAtom("tievalue", "tied");
+ doc.addAtom("value", "foo");
+ writer.addDocument(doc);
+ doc = writer.newDocument();
+ doc.addAtom("tievalue", "tied");
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
Map<String,Type> mappings = new HashMap<>();
mappings.put("tievalue", Type.SORTED);
@@ -1192,11 +1262,11 @@ public class TestFieldCacheSort extends
public void testScore() throws IOException {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- Document doc = new Document();
- doc.add(newStringField("value", "bar", Field.Store.NO));
+ Document2 doc = writer.newDocument();
+ doc.addAtom("value", "bar");
writer.addDocument(doc);
- doc = new Document();
- doc.add(newStringField("value", "foo", Field.Store.NO));
+ doc = writer.newDocument();
+ doc.addAtom("value", "foo");
writer.addDocument(doc);
IndexReader ir = writer.getReader();
writer.close();
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSortRandom.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSortRandom.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSortRandom.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheSortRandom.java Thu Nov 27 11:34:43 2014
@@ -28,13 +28,14 @@ import java.util.Map;
import java.util.Random;
import java.util.Set;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.IntField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.document.StringField;
-import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.DocValues;
import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.NumericDocValues;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.search.BooleanClause.Occur;
@@ -50,9 +51,9 @@ import org.apache.lucene.search.SortFiel
import org.apache.lucene.search.TopFieldDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.uninverting.UninvertingReader.Type;
+import org.apache.lucene.util.BitDocIdSet;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
-import org.apache.lucene.util.BitDocIdSet;
import org.apache.lucene.util.FixedBitSet;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.TestUtil;
@@ -74,6 +75,10 @@ public class TestFieldCacheSortRandom ex
final int NUM_DOCS = atLeast(100);
final Directory dir = newDirectory();
final RandomIndexWriter writer = new RandomIndexWriter(random, dir);
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("stringdv");
+ fieldTypes.disableSorting("id");
+
final boolean allowDups = random.nextBoolean();
final Set<String> seen = new HashSet<>();
final int maxLength = TestUtil.nextInt(random, 5, 100);
@@ -85,7 +90,7 @@ public class TestFieldCacheSortRandom ex
final List<BytesRef> docValues = new ArrayList<>();
// TODO: deletions
while (numDocs < NUM_DOCS) {
- final Document doc = new Document();
+ final Document2 doc = writer.newDocument();
// 10% of the time, the document is missing the value:
final BytesRef br;
@@ -108,7 +113,7 @@ public class TestFieldCacheSortRandom ex
System.out.println(" " + numDocs + ": s=" + s);
}
- doc.add(new StringField("stringdv", s, Field.Store.NO));
+ doc.addAtom("stringdv", s);
docValues.add(new BytesRef(s));
} else {
@@ -119,7 +124,7 @@ public class TestFieldCacheSortRandom ex
docValues.add(null);
}
- doc.add(new IntField("id", numDocs, Field.Store.YES));
+ doc.addInt("id", numDocs);
writer.addDocument(doc);
numDocs++;
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheVsDocValues.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheVsDocValues.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheVsDocValues.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestFieldCacheVsDocValues.java Thu Nov 27 11:34:43 2014
@@ -28,6 +28,7 @@ import org.apache.lucene.document.Binary
import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.document.NumericDocValuesField;
import org.apache.lucene.document.SortedDocValuesField;
import org.apache.lucene.document.SortedSetDocValuesField;
@@ -135,6 +136,8 @@ public class TestFieldCacheVsDocValues e
numDocs = TestUtil.nextInt(random(), 100, 200);
}
IndexWriter w = new IndexWriter(d, newIndexWriterConfig(analyzer));
+ FieldTypes fieldTypes = w.getFieldTypes();
+ fieldTypes.disableSorting("field");
List<byte[]> docBytes = new ArrayList<>();
long totalBytes = 0;
for(int docID=0;docID<numDocs;docID++) {
@@ -158,14 +161,16 @@ public class TestFieldCacheVsDocValues e
byte[] bytes = new byte[numBytes];
random().nextBytes(bytes);
docBytes.add(bytes);
- Document doc = new Document();
+ Document2 doc = w.newDocument();
BytesRef b = new BytesRef(bytes);
b.length = bytes.length;
- doc.add(new BinaryDocValuesField("field", b));
- doc.add(new StringField("id", ""+docID, Field.Store.YES));
+ doc.addBinary("field", b);
+ doc.addAtom("id", ""+docID);
try {
w.addDocument(doc);
} catch (IllegalArgumentException iae) {
+ System.out.println("got:");
+ iae.printStackTrace(System.out);
if (iae.getMessage().indexOf("is too large") == -1) {
throw iae;
} else {
@@ -234,6 +239,9 @@ public class TestFieldCacheVsDocValues e
numDocs = TestUtil.nextInt(random(), 100, 200);
}
IndexWriter w = new IndexWriter(d, newIndexWriterConfig(analyzer));
+ FieldTypes fieldTypes = w.getFieldTypes();
+ fieldTypes.disableSorting("field");
+
List<byte[]> docBytes = new ArrayList<>();
long totalBytes = 0;
for(int docID=0;docID<numDocs;docID++) {
@@ -257,11 +265,11 @@ public class TestFieldCacheVsDocValues e
byte[] bytes = new byte[numBytes];
random().nextBytes(bytes);
docBytes.add(bytes);
- Document doc = new Document();
+ Document2 doc = w.newDocument();
BytesRef b = new BytesRef(bytes);
b.length = bytes.length;
- doc.add(new BinaryDocValuesField("field", b));
- doc.add(new StringField("id", ""+docID, Field.Store.YES));
+ doc.addBinary("field", b);
+ doc.addAtom("id", ""+docID);
w.addDocument(doc);
}
@@ -287,18 +295,12 @@ public class TestFieldCacheVsDocValues e
Directory dir = newDirectory();
IndexWriterConfig conf = newIndexWriterConfig(new MockAnalyzer(random()));
RandomIndexWriter writer = new RandomIndexWriter(random(), dir, conf);
- Document doc = new Document();
- Field idField = new StringField("id", "", Field.Store.NO);
- Field indexedField = new StringField("indexed", "", Field.Store.NO);
- Field dvField = new SortedDocValuesField("dv", new BytesRef());
- doc.add(idField);
- doc.add(indexedField);
- doc.add(dvField);
// index some docs
int numDocs = atLeast(300);
for (int i = 0; i < numDocs; i++) {
- idField.setStringValue(Integer.toString(i));
+ Document2 doc = writer.newDocument();
+ doc.addAtom("id", Integer.toString(i));
final int length;
if (minLength == maxLength) {
length = minLength; // fixed length
@@ -306,8 +308,8 @@ public class TestFieldCacheVsDocValues e
length = TestUtil.nextInt(random(), minLength, maxLength);
}
String value = TestUtil.randomSimpleString(random(), length);
- indexedField.setStringValue(value);
- dvField.setBytesValue(new BytesRef(value));
+ doc.addAtom("indexed", value);
+ doc.addBinary("dv", new BytesRef(value));
writer.addDocument(doc);
if (random().nextInt(31) == 0) {
writer.commit();
@@ -342,9 +344,8 @@ public class TestFieldCacheVsDocValues e
// index some docs
int numDocs = atLeast(300);
for (int i = 0; i < numDocs; i++) {
- Document doc = new Document();
- Field idField = new StringField("id", Integer.toString(i), Field.Store.YES);
- doc.add(idField);
+ Document2 doc = writer.newDocument();
+ doc.addAtom("id", Integer.toString(i));
final int length = TestUtil.nextInt(random(), minLength, maxLength);
int numValues = random().nextInt(17);
// create a random list of strings
@@ -411,10 +412,6 @@ public class TestFieldCacheVsDocValues e
Directory dir = newDirectory();
IndexWriterConfig conf = newIndexWriterConfig(new MockAnalyzer(random()));
RandomIndexWriter writer = new RandomIndexWriter(random(), dir, conf);
- Field idField = new StringField("id", "", Field.Store.NO);
- Field indexedField = newStringField("indexed", "", Field.Store.NO);
- Field dvField = new NumericDocValuesField("dv", 0);
-
// index some docs
int numDocs = atLeast(300);
@@ -422,16 +419,13 @@ public class TestFieldCacheVsDocValues e
// for numbers of values <= 256, all storage layouts are tested
assert numDocs > 256;
for (int i = 0; i < numDocs; i++) {
- idField.setStringValue(Integer.toString(i));
long value = longs.next();
- indexedField.setStringValue(Long.toString(value));
- dvField.setLongValue(value);
- Document doc = new Document();
- doc.add(idField);
+ Document2 doc = writer.newDocument();
+ doc.addAtom("id", Integer.toString(i));
// 1/4 of the time we neglect to add the fields
if (random().nextInt(4) > 0) {
- doc.add(indexedField);
- doc.add(dvField);
+ doc.addAtom("indexed", Long.toString(value));
+ doc.addLong("dv", value);
}
writer.addDocument(doc);
if (random().nextInt(31) == 0) {
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms32.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms32.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms32.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms32.java Thu Nov 27 11:34:43 2014
@@ -21,17 +21,20 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.IntField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.RandomIndexWriter;
+import org.apache.lucene.search.ConstantScoreQuery;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.NumericRangeQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.Sort;
import org.apache.lucene.search.SortField;
+import org.apache.lucene.search.TermRangeQuery;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.uninverting.UninvertingReader.Type;
@@ -62,44 +65,19 @@ public class TestNumericTerms32 extends
newIndexWriterConfig(new MockAnalyzer(random()))
.setMaxBufferedDocs(TestUtil.nextInt(random(), 100, 1000))
.setMergePolicy(newLogMergePolicy()));
-
- final FieldType storedInt = new FieldType(IntField.TYPE_NOT_STORED);
- storedInt.setStored(true);
- storedInt.freeze();
-
- final FieldType storedInt8 = new FieldType(storedInt);
- storedInt8.setNumericPrecisionStep(8);
-
- final FieldType storedInt4 = new FieldType(storedInt);
- storedInt4.setNumericPrecisionStep(4);
-
- final FieldType storedInt2 = new FieldType(storedInt);
- storedInt2.setNumericPrecisionStep(2);
-
- IntField
- field8 = new IntField("field8", 0, storedInt8),
- field4 = new IntField("field4", 0, storedInt4),
- field2 = new IntField("field2", 0, storedInt2);
-
- Document doc = new Document();
- // add fields, that have a distance to test general functionality
- doc.add(field8); doc.add(field4); doc.add(field2);
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("field");
// Add a series of noDocs docs with increasing int values
for (int l=0; l<noDocs; l++) {
+ Document2 doc = writer.newDocument();
int val=distance*l+startOffset;
- field8.setIntValue(val);
- field4.setIntValue(val);
- field2.setIntValue(val);
-
- val=l-(noDocs/2);
+ doc.addInt("field", val);
writer.addDocument(doc);
}
Map<String,Type> map = new HashMap<>();
- map.put("field2", Type.INTEGER);
- map.put("field4", Type.INTEGER);
- map.put("field8", Type.INTEGER);
+ map.put("field", Type.INTEGER);
reader = UninvertingReader.wrap(writer.getReader(), map);
searcher=newSearcher(reader);
writer.close();
@@ -114,9 +92,12 @@ public class TestNumericTerms32 extends
directory.close();
directory = null;
}
-
- private void testSorting(int precisionStep) throws Exception {
- String field="field"+precisionStep;
+
+ @Test
+ public void testSorting() throws Exception {
+ FieldTypes fieldTypes = reader.getFieldTypes();
+
+ String field="field";
// 10 random tests, the index order is ascending,
// so using a reverse sort field should retun descending documents
int num = TestUtil.nextInt(random(), 10, 20);
@@ -126,7 +107,7 @@ public class TestNumericTerms32 extends
if (lower>upper) {
int a=lower; lower=upper; upper=a;
}
- Query tq=NumericRangeQuery.newIntRange(field, precisionStep, lower, upper, true, true);
+ Query tq = new ConstantScoreQuery(fieldTypes.newRangeFilter(field, lower, true, upper, true));
TopDocs topDocs = searcher.search(tq, null, noDocs, new Sort(new SortField(field, SortField.Type.INT, true)));
if (topDocs.totalHits==0) continue;
ScoreDoc[] sd = topDocs.scoreDocs;
@@ -139,19 +120,4 @@ public class TestNumericTerms32 extends
}
}
}
-
- @Test
- public void testSorting_8bit() throws Exception {
- testSorting(8);
- }
-
- @Test
- public void testSorting_4bit() throws Exception {
- testSorting(4);
- }
-
- @Test
- public void testSorting_2bit() throws Exception {
- testSorting(2);
- }
}
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms64.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms64.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms64.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestNumericTerms64.java Thu Nov 27 11:34:43 2014
@@ -21,11 +21,13 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.LongField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.RandomIndexWriter;
+import org.apache.lucene.search.ConstantScoreQuery;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.NumericRangeQuery;
import org.apache.lucene.search.Query;
@@ -62,49 +64,18 @@ public class TestNumericTerms64 extends
newIndexWriterConfig(new MockAnalyzer(random()))
.setMaxBufferedDocs(TestUtil.nextInt(random(), 100, 1000))
.setMergePolicy(newLogMergePolicy()));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.disableSorting("field");
- final FieldType storedLong = new FieldType(LongField.TYPE_NOT_STORED);
- storedLong.setStored(true);
- storedLong.freeze();
-
- final FieldType storedLong8 = new FieldType(storedLong);
- storedLong8.setNumericPrecisionStep(8);
-
- final FieldType storedLong4 = new FieldType(storedLong);
- storedLong4.setNumericPrecisionStep(4);
-
- final FieldType storedLong6 = new FieldType(storedLong);
- storedLong6.setNumericPrecisionStep(6);
-
- final FieldType storedLong2 = new FieldType(storedLong);
- storedLong2.setNumericPrecisionStep(2);
-
- LongField
- field8 = new LongField("field8", 0L, storedLong8),
- field6 = new LongField("field6", 0L, storedLong6),
- field4 = new LongField("field4", 0L, storedLong4),
- field2 = new LongField("field2", 0L, storedLong2);
-
- Document doc = new Document();
- // add fields, that have a distance to test general functionality
- doc.add(field8); doc.add(field6); doc.add(field4); doc.add(field2);
-
// Add a series of noDocs docs with increasing long values, by updating the fields
for (int l=0; l<noDocs; l++) {
+ Document2 doc = writer.newDocument();
long val=distance*l+startOffset;
- field8.setLongValue(val);
- field6.setLongValue(val);
- field4.setLongValue(val);
- field2.setLongValue(val);
-
- val=l-(noDocs/2);
+ doc.addLong("field", val);
writer.addDocument(doc);
}
Map<String,Type> map = new HashMap<>();
- map.put("field2", Type.LONG);
- map.put("field4", Type.LONG);
- map.put("field6", Type.LONG);
- map.put("field8", Type.LONG);
+ map.put("field", Type.LONG);
reader = UninvertingReader.wrap(writer.getReader(), map);
searcher=newSearcher(reader);
writer.close();
@@ -120,8 +91,9 @@ public class TestNumericTerms64 extends
directory = null;
}
- private void testSorting(int precisionStep) throws Exception {
- String field="field"+precisionStep;
+ public void testSorting() throws Exception {
+ FieldTypes fieldTypes = reader.getFieldTypes();
+ String field="field";
// 10 random tests, the index order is ascending,
// so using a reverse sort field should retun descending documents
int num = TestUtil.nextInt(random(), 10, 20);
@@ -131,7 +103,7 @@ public class TestNumericTerms64 extends
if (lower>upper) {
long a=lower; lower=upper; upper=a;
}
- Query tq=NumericRangeQuery.newLongRange(field, precisionStep, lower, upper, true, true);
+ Query tq = new ConstantScoreQuery(fieldTypes.newRangeFilter(field, lower, true, upper, true));
TopDocs topDocs = searcher.search(tq, null, noDocs, new Sort(new SortField(field, SortField.Type.LONG, true)));
if (topDocs.totalHits==0) continue;
ScoreDoc[] sd = topDocs.scoreDocs;
@@ -144,24 +116,4 @@ public class TestNumericTerms64 extends
}
}
}
-
- @Test
- public void testSorting_8bit() throws Exception {
- testSorting(8);
- }
-
- @Test
- public void testSorting_6bit() throws Exception {
- testSorting(6);
- }
-
- @Test
- public void testSorting_4bit() throws Exception {
- testSorting(4);
- }
-
- @Test
- public void testSorting_2bit() throws Exception {
- testSorting(2);
- }
}
Modified: lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestUninvertingReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestUninvertingReader.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestUninvertingReader.java (original)
+++ lucene/dev/branches/lucene6005/lucene/misc/src/test/org/apache/lucene/uninverting/TestUninvertingReader.java Thu Nov 27 11:34:43 2014
@@ -20,13 +20,13 @@ package org.apache.lucene.uninverting;
import java.io.IOException;
import java.util.Collections;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.document.IntField;
-import org.apache.lucene.document.LongField;
-import org.apache.lucene.index.LeafReader;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReader;
import org.apache.lucene.index.SortedSetDocValues;
import org.apache.lucene.store.Directory;
import org.apache.lucene.uninverting.UninvertingReader.Type;
@@ -36,18 +36,22 @@ import org.apache.lucene.util.NumericUti
import org.apache.lucene.util.TestUtil;
public class TestUninvertingReader extends LuceneTestCase {
-
+
+ // nocommit also make back-compat variants of these
public void testSortedSetInteger() throws IOException {
Directory dir = newDirectory();
IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(null));
-
- Document doc = new Document();
- doc.add(new IntField("foo", 5, Field.Store.NO));
+ FieldTypes fieldTypes = iw.getFieldTypes();
+ fieldTypes.disableSorting("foo");
+ fieldTypes.setMultiValued("foo");
+
+ Document2 doc = iw.newDocument();
+ doc.addInt("foo", 5);
iw.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("foo", 5, Field.Store.NO));
- doc.add(new IntField("foo", -3, Field.Store.NO));
+ doc = iw.newDocument();
+ doc.addInt("foo", 5);
+ doc.addInt("foo", -3);
iw.addDocument(doc);
iw.forceMerge(1);
@@ -69,10 +73,10 @@ public class TestUninvertingReader exten
assertEquals(SortedSetDocValues.NO_MORE_ORDS, v.nextOrd());
BytesRef value = v.lookupOrd(0);
- assertEquals(-3, NumericUtils.prefixCodedToInt(value));
+ assertEquals(-3, Document2.bytesToInt(value));
value = v.lookupOrd(1);
- assertEquals(5, NumericUtils.prefixCodedToInt(value));
+ assertEquals(5, Document2.bytesToInt(value));
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -81,14 +85,17 @@ public class TestUninvertingReader exten
public void testSortedSetFloat() throws IOException {
Directory dir = newDirectory();
IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(null));
+ FieldTypes fieldTypes = iw.getFieldTypes();
+ fieldTypes.disableSorting("foo");
+ fieldTypes.setMultiValued("foo");
- Document doc = new Document();
- doc.add(new IntField("foo", Float.floatToRawIntBits(5f), Field.Store.NO));
+ Document2 doc = iw.newDocument();
+ doc.addFloat("foo", 5f);
iw.addDocument(doc);
- doc = new Document();
- doc.add(new IntField("foo", Float.floatToRawIntBits(5f), Field.Store.NO));
- doc.add(new IntField("foo", Float.floatToRawIntBits(-3f), Field.Store.NO));
+ doc = iw.newDocument();
+ doc.addFloat("foo", 5f);
+ doc.addFloat("foo", -3f);
iw.addDocument(doc);
iw.forceMerge(1);
@@ -111,10 +118,10 @@ public class TestUninvertingReader exten
assertEquals(SortedSetDocValues.NO_MORE_ORDS, v.nextOrd());
BytesRef value = v.lookupOrd(0);
- assertEquals(Float.floatToRawIntBits(-3f), NumericUtils.prefixCodedToInt(value));
+ assertEquals(-3f, Document2.bytesToFloat(value), 0.0f);
value = v.lookupOrd(1);
- assertEquals(Float.floatToRawIntBits(5f), NumericUtils.prefixCodedToInt(value));
+ assertEquals(5f, Document2.bytesToFloat(value), 0.0f);
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -123,14 +130,17 @@ public class TestUninvertingReader exten
public void testSortedSetLong() throws IOException {
Directory dir = newDirectory();
IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(null));
+ FieldTypes fieldTypes = iw.getFieldTypes();
+ fieldTypes.disableSorting("foo");
+ fieldTypes.setMultiValued("foo");
- Document doc = new Document();
- doc.add(new LongField("foo", 5, Field.Store.NO));
+ Document2 doc = iw.newDocument();
+ doc.addLong("foo", 5);
iw.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("foo", 5, Field.Store.NO));
- doc.add(new LongField("foo", -3, Field.Store.NO));
+ doc = iw.newDocument();
+ doc.addLong("foo", 5);
+ doc.addLong("foo", -3);
iw.addDocument(doc);
iw.forceMerge(1);
@@ -152,10 +162,10 @@ public class TestUninvertingReader exten
assertEquals(SortedSetDocValues.NO_MORE_ORDS, v.nextOrd());
BytesRef value = v.lookupOrd(0);
- assertEquals(-3, NumericUtils.prefixCodedToLong(value));
+ assertEquals(-3, Document2.bytesToLong(value));
value = v.lookupOrd(1);
- assertEquals(5, NumericUtils.prefixCodedToLong(value));
+ assertEquals(5, Document2.bytesToLong(value));
TestUtil.checkReader(ir);
ir.close();
dir.close();
@@ -164,14 +174,17 @@ public class TestUninvertingReader exten
public void testSortedSetDouble() throws IOException {
Directory dir = newDirectory();
IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(null));
+ FieldTypes fieldTypes = iw.getFieldTypes();
+ fieldTypes.disableSorting("foo");
+ fieldTypes.setMultiValued("foo");
- Document doc = new Document();
- doc.add(new LongField("foo", Double.doubleToRawLongBits(5d), Field.Store.NO));
+ Document2 doc = iw.newDocument();
+ doc.addDouble("foo", 5d);
iw.addDocument(doc);
- doc = new Document();
- doc.add(new LongField("foo", Double.doubleToRawLongBits(5d), Field.Store.NO));
- doc.add(new LongField("foo", Double.doubleToRawLongBits(-3d), Field.Store.NO));
+ doc = iw.newDocument();
+ doc.addDouble("foo", 5d);
+ doc.addDouble("foo", -3d);
iw.addDocument(doc);
iw.forceMerge(1);
@@ -193,10 +206,10 @@ public class TestUninvertingReader exten
assertEquals(SortedSetDocValues.NO_MORE_ORDS, v.nextOrd());
BytesRef value = v.lookupOrd(0);
- assertEquals(Double.doubleToRawLongBits(-3d), NumericUtils.prefixCodedToLong(value));
+ assertEquals(-3d, Document2.bytesToDouble(value), 0.0);
value = v.lookupOrd(1);
- assertEquals(Double.doubleToRawLongBits(5d), NumericUtils.prefixCodedToLong(value));
+ assertEquals(5d, Document2.bytesToDouble(value), 0.0);
TestUtil.checkReader(ir);
ir.close();
dir.close();
Modified: lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/BooleanFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/BooleanFilterTest.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/BooleanFilterTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/BooleanFilterTest.java Thu Nov 27 11:34:43 2014
@@ -21,6 +21,7 @@ import java.io.IOException;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.analysis.MockTokenizer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.LeafReader;
@@ -36,8 +37,8 @@ import org.apache.lucene.search.QueryWra
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TermRangeFilter;
import org.apache.lucene.store.Directory;
-import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BitDocIdSet;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.FixedBitSet;
import org.apache.lucene.util.LuceneTestCase;
@@ -69,11 +70,11 @@ public class BooleanFilterTest extends L
}
private void addDoc(RandomIndexWriter writer, String accessRights, String price, String date, String inStock) throws IOException {
- Document doc = new Document();
- doc.add(newTextField("accessRights", accessRights, Field.Store.YES));
- doc.add(newTextField("price", price, Field.Store.YES));
- doc.add(newTextField("date", date, Field.Store.YES));
- doc.add(newTextField("inStock", inStock, Field.Store.YES));
+ Document2 doc = writer.newDocument();
+ doc.addLargeText("accessRights", accessRights);
+ doc.addLargeText("price", price);
+ doc.addLargeText("date", date);
+ doc.addLargeText("inStock", inStock);
writer.addDocument(doc);
}
Modified: lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java Thu Nov 27 11:34:43 2014
@@ -26,12 +26,13 @@ import java.util.Random;
import java.util.Set;
import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.index.LeafReader;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReader;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.index.SlowCompositeReaderWrapper;
import org.apache.lucene.index.Term;
@@ -66,9 +67,9 @@ public class CommonTermsQueryTest extend
"this is the end of the universe as we know it",
"there is the famous restaurant at the end of the universe",};
for (int i = 0; i < docs.length; i++) {
- Document doc = new Document();
- doc.add(newStringField("id", "" + i, Field.Store.YES));
- doc.add(newTextField("field", docs[i], Field.Store.NO));
+ Document2 doc = w.newDocument();
+ doc.addAtom("id", "" + i);
+ doc.addLargeText("field", docs[i]);
w.addDocument(doc);
}
@@ -196,9 +197,9 @@ public class CommonTermsQueryTest extend
"this is the end of the universe as we know it",
"there is the famous restaurant at the end of the universe",};
for (int i = 0; i < docs.length; i++) {
- Document doc = new Document();
- doc.add(newStringField("id", "" + i, Field.Store.YES));
- doc.add(newTextField("field", docs[i], Field.Store.NO));
+ Document2 doc = w.newDocument();
+ doc.addAtom("id", "" + i);
+ doc.addLargeText("field", docs[i]);
w.addDocument(doc);
}
@@ -355,9 +356,9 @@ public class CommonTermsQueryTest extend
"this is the end of the universe as we know it",
"there is the famous restaurant at the end of the universe",};
for (int i = 0; i < docs.length; i++) {
- Document doc = new Document();
- doc.add(newStringField("id", "" + i, Field.Store.YES));
- doc.add(newTextField("field", docs[i], Field.Store.NO));
+ Document2 doc = w.newDocument();
+ doc.addAtom("id", "" + i);
+ doc.addLargeText("field", docs[i]);
w.addDocument(doc);
}
@@ -532,7 +533,7 @@ public class CommonTermsQueryTest extend
long seed) throws IOException {
Random random = new Random(seed);
// primary source for our data is from linefiledocs, its realistic.
- LineFileDocs lineFileDocs = new LineFileDocs(random);
+ LineFileDocs lineFileDocs = new LineFileDocs(writer.w, random);
// TODO: we should add other fields that use things like docs&freqs but omit
// positions,
Modified: lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/TermFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/TermFilterTest.java?rev=1642110&r1=1642109&r2=1642110&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/TermFilterTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/queries/src/test/org/apache/lucene/queries/TermFilterTest.java Thu Nov 27 11:34:43 2014
@@ -17,10 +17,16 @@ package org.apache.lucene.queries;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+
+import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.index.SlowCompositeReaderWrapper;
import org.apache.lucene.index.Term;
@@ -36,11 +42,6 @@ import org.apache.lucene.store.Directory
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.TestUtil;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-
public class TermFilterTest extends LuceneTestCase {
public void testCachability() throws Exception {
@@ -56,8 +57,8 @@ public class TermFilterTest extends Luce
String fieldName = "field1";
Directory rd = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(random(), rd);
- Document doc = new Document();
- doc.add(newStringField(fieldName, "value1", Field.Store.NO));
+ Document2 doc = w.newDocument();
+ doc.addAtom(fieldName, "value1");
w.addDocument(doc);
IndexReader reader = SlowCompositeReaderWrapper.wrap(w.getReader());
assertTrue(reader.getContext() instanceof LeafReaderContext);
@@ -89,8 +90,8 @@ public class TermFilterTest extends Luce
String field = "field" + i;
String string = TestUtil.randomRealisticUnicodeString(random());
terms.add(new Term(field, string));
- Document doc = new Document();
- doc.add(newStringField(field, string, Field.Store.NO));
+ Document2 doc = w.newDocument();
+ doc.addAtom(field, string);
w.addDocument(doc);
}
IndexReader reader = w.getReader();