You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2012/01/18 23:28:20 UTC

svn commit: r1233096 [10/13] - in /lucene/dev/branches/solrcloud: ./ dev-tools/eclipse/ dev-tools/idea/.idea/ dev-tools/idea/lucene/contrib/ dev-tools/idea/modules/analysis/kuromoji/ dev-tools/idea/solr/contrib/analysis-extras/ dev-tools/maven/modules/...

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java Wed Jan 18 22:28:07 2012
@@ -26,7 +26,6 @@ import org.apache.lucene.analysis.MockAn
 import org.apache.lucene.analysis.MockTokenFilter;
 import org.apache.lucene.analysis.MockTokenizer;
 import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.FieldType;
@@ -69,34 +68,30 @@ public class TestTermVectorsWriter exten
     // Token "" occurred once
     assertEquals(1, termsEnum.totalTermFreq());
 
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(8, offsetAtt.startOffset());
-    assertEquals(8, offsetAtt.endOffset());
+    assertEquals(8, dpEnum.startOffset());
+    assertEquals(8, dpEnum.endOffset());
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
 
     // Token "abcd" occurred three times
     assertEquals(new BytesRef("abcd"), termsEnum.next());
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-    offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertEquals(3, termsEnum.totalTermFreq());
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(4, offsetAtt.startOffset());
-    assertEquals(8, offsetAtt.endOffset());
+    assertEquals(4, dpEnum.startOffset());
+    assertEquals(8, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(8, offsetAtt.startOffset());
-    assertEquals(12, offsetAtt.endOffset());
+    assertEquals(8, dpEnum.startOffset());
+    assertEquals(12, dpEnum.endOffset());
 
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
     assertNull(termsEnum.next());
@@ -122,19 +117,17 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
     assertEquals(2, termsEnum.totalTermFreq());
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(5, offsetAtt.startOffset());
-    assertEquals(9, offsetAtt.endOffset());
+    assertEquals(5, dpEnum.startOffset());
+    assertEquals(9, dpEnum.endOffset());
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
 
     r.close();
@@ -159,19 +152,17 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
     assertEquals(2, termsEnum.totalTermFreq());
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(8, offsetAtt.startOffset());
-    assertEquals(12, offsetAtt.endOffset());
+    assertEquals(8, dpEnum.startOffset());
+    assertEquals(12, dpEnum.endOffset());
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
 
     r.close();
@@ -200,19 +191,17 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
     assertEquals(2, termsEnum.totalTermFreq());
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(8, offsetAtt.startOffset());
-    assertEquals(12, offsetAtt.endOffset());
+    assertEquals(8, dpEnum.startOffset());
+    assertEquals(12, dpEnum.endOffset());
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
 
     r.close();
@@ -238,19 +227,17 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
     assertEquals(2, termsEnum.totalTermFreq());
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     dpEnum.nextPosition();
-    assertEquals(9, offsetAtt.startOffset());
-    assertEquals(13, offsetAtt.endOffset());
+    assertEquals(9, dpEnum.startOffset());
+    assertEquals(13, dpEnum.endOffset());
     assertEquals(DocsEnum.NO_MORE_DOCS, dpEnum.nextDoc());
 
     r.close();
@@ -277,32 +264,26 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
 
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     assertNotNull(termsEnum.next());
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-    offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(11, offsetAtt.startOffset());
-    assertEquals(17, offsetAtt.endOffset());
+    assertEquals(11, dpEnum.startOffset());
+    assertEquals(17, dpEnum.endOffset());
 
     assertNotNull(termsEnum.next());
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-    offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(18, offsetAtt.startOffset());
-    assertEquals(21, offsetAtt.endOffset());
+    assertEquals(18, dpEnum.startOffset());
+    assertEquals(21, dpEnum.endOffset());
 
     r.close();
     dir.close();
@@ -328,24 +309,20 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
 
     assertEquals(1, (int) termsEnum.totalTermFreq());
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(1, offsetAtt.startOffset());
-    assertEquals(7, offsetAtt.endOffset());
+    assertEquals(1, dpEnum.startOffset());
+    assertEquals(7, dpEnum.endOffset());
 
     assertNotNull(termsEnum.next());
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-    offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(8, offsetAtt.startOffset());
-    assertEquals(11, offsetAtt.endOffset());
+    assertEquals(8, dpEnum.startOffset());
+    assertEquals(11, dpEnum.endOffset());
 
     r.close();
     dir.close();
@@ -375,24 +352,20 @@ public class TestTermVectorsWriter exten
     IndexReader r = IndexReader.open(dir);
     TermsEnum termsEnum = r.getTermVectors(0).terms("field").iterator(null);
     assertNotNull(termsEnum.next());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, true);
 
     assertEquals(1, (int) termsEnum.totalTermFreq());
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(0, offsetAtt.startOffset());
-    assertEquals(4, offsetAtt.endOffset());
+    assertEquals(0, dpEnum.startOffset());
+    assertEquals(4, dpEnum.endOffset());
 
     assertNotNull(termsEnum.next());
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-    offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     dpEnum.nextPosition();
-    assertEquals(6, offsetAtt.startOffset());
-    assertEquals(12, offsetAtt.endOffset());
+    assertEquals(6, dpEnum.startOffset());
+    assertEquals(12, dpEnum.endOffset());
 
 
     r.close();

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java Wed Jan 18 22:28:07 2012
@@ -164,7 +164,7 @@ public class TestTermsEnum extends Lucen
 
   private void addDoc(RandomIndexWriter w, Collection<String> terms, Map<BytesRef,Integer> termToID, int id) throws IOException {
     Document doc = new Document();
-    doc.add(new NumericField("id").setIntValue(id));
+    doc.add(new NumericField("id", id));
     if (VERBOSE) {
       System.out.println("TEST: addDoc id:" + id + " terms=" + terms);
     }
@@ -232,7 +232,7 @@ public class TestTermsEnum extends Lucen
     w.close();
 
     // NOTE: intentional insanity!!
-    final int[] docIDToID = FieldCache.DEFAULT.getInts(r, "id", false);
+    final int[] docIDToID = FieldCache.DEFAULT.getInts(new SlowMultiReaderWrapper(r), "id", false);
 
     for(int iter=0;iter<10*RANDOM_MULTIPLIER;iter++) {
 

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTypePromotion.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTypePromotion.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTypePromotion.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestTypePromotion.java Wed Jan 18 22:28:07 2012
@@ -1,5 +1,22 @@
 package org.apache.lucene.index;
 
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
 import java.io.IOException;
 import java.util.EnumSet;
 import java.util.Random;
@@ -11,37 +28,14 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.DocValuesField;
 import org.apache.lucene.document.TextField;
-import org.apache.lucene.index.CorruptIndexException;
-import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.ReaderContext;
-import org.apache.lucene.index.DocValues;
 import org.apache.lucene.index.DocValues.Source;
 import org.apache.lucene.index.DocValues.Type;
-import org.apache.lucene.index.IndexWriter;
-import org.apache.lucene.index.IndexWriterConfig;
-import org.apache.lucene.index.NoMergePolicy;
-import org.apache.lucene.index.SlowMultiReaderWrapper;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
 import org.junit.Before;
 
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with this
- * work for additional information regarding copyright ownership. The ASF
- * licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
 public class TestTypePromotion extends LuceneTestCase {
   @Before
   public void setUp() throws Exception {
@@ -81,11 +75,11 @@ public class TestTypePromotion extends L
     int num_2 = atLeast(200);
     int num_3 = atLeast(200);
     long[] values = new long[num_1 + num_2 + num_3];
-    index(writer, new DocValuesField("promote"),
+    index(writer,
         randomValueType(types, random), values, 0, num_1);
     writer.commit();
     
-    index(writer, new DocValuesField("promote"),
+    index(writer,
         randomValueType(types, random), values, num_1, num_2);
     writer.commit();
     
@@ -96,7 +90,7 @@ public class TestTypePromotion extends L
       Directory dir_2 = newDirectory() ;
       IndexWriter writer_2 = new IndexWriter(dir_2,
           newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)));
-      index(writer_2, new DocValuesField("promote"),
+      index(writer_2,
           randomValueType(types, random), values, num_1 + num_2, num_3);
       writer_2.commit();
       writer_2.close();
@@ -110,7 +104,7 @@ public class TestTypePromotion extends L
       }
       dir_2.close();
     } else {
-      index(writer, new DocValuesField("promote"),
+      index(writer,
           randomValueType(types, random), values, num_1 + num_2, num_3);
     }
 
@@ -172,9 +166,45 @@ public class TestTypePromotion extends L
     reader.close();
   }
 
-  public void index(IndexWriter writer, DocValuesField valField,
+  public void index(IndexWriter writer,
       Type valueType, long[] values, int offset, int num)
       throws CorruptIndexException, IOException {
+    final DocValuesField valField;
+    switch (valueType) {
+    case FIXED_INTS_8:
+      valField = new DocValuesField("promote", (byte) 0, valueType);
+      break;
+    case FIXED_INTS_16:
+      valField = new DocValuesField("promote", (short) 0, valueType);
+      break;
+    case FIXED_INTS_32:
+      valField = new DocValuesField("promote", 0, valueType);
+      break;
+    case VAR_INTS:
+      valField = new DocValuesField("promote", 0L, valueType);
+      break;
+    case FIXED_INTS_64:
+      valField = new DocValuesField("promote", (long) 0, valueType);
+      break;
+    case FLOAT_64:
+      valField = new DocValuesField("promote", (double) 0, valueType);
+      break;
+    case FLOAT_32:
+      valField = new DocValuesField("promote", (float) 0, valueType);
+      break;
+    case BYTES_FIXED_DEREF:
+    case BYTES_FIXED_SORTED:
+    case BYTES_FIXED_STRAIGHT:
+    case BYTES_VAR_DEREF:
+    case BYTES_VAR_SORTED:
+    case BYTES_VAR_STRAIGHT:
+      valField = new DocValuesField("promote", new BytesRef(), valueType);
+      break;
+    default:
+      fail("unexpected value " + valueType);
+      valField = null;
+    }
+
     BytesRef ref = new BytesRef(new byte[] { 1, 2, 3, 4 });
     for (int i = offset; i < offset + num; i++) {
       Document doc = new Document();
@@ -182,40 +212,40 @@ public class TestTypePromotion extends L
       switch (valueType) {
       case VAR_INTS:
         values[i] = random.nextInt();
-        valField.setInt(values[i]);
+        valField.setValue(values[i]);
         break;
       case FIXED_INTS_16:
         values[i] = random.nextInt(Short.MAX_VALUE);
-        valField.setInt((short) values[i], true);
+        valField.setValue((short) values[i]);
         break;
       case FIXED_INTS_32:
         values[i] = random.nextInt();
-        valField.setInt((int) values[i], true);
+        valField.setValue((int) values[i]);
         break;
       case FIXED_INTS_64:
         values[i] = random.nextLong();
-        valField.setInt(values[i], true);
+        valField.setValue(values[i]);
         break;
       case FLOAT_64:
         double nextDouble = random.nextDouble();
         values[i] = Double.doubleToRawLongBits(nextDouble);
-        valField.setFloat(nextDouble);
+        valField.setValue(nextDouble);
         break;
       case FLOAT_32:
         final float nextFloat = random.nextFloat();
         values[i] = Double.doubleToRawLongBits(nextFloat);
-        valField.setFloat(nextFloat);
+        valField.setValue(nextFloat);
         break;
       case FIXED_INTS_8:
-         values[i] = (byte) i;
-        valField.setInt((byte)values[i], true);
+        values[i] = (byte) i;
+        valField.setValue((byte)values[i]);
         break;
       case BYTES_FIXED_DEREF:
       case BYTES_FIXED_SORTED:
       case BYTES_FIXED_STRAIGHT:
         values[i] = random.nextLong();
         BytesRefUtils.copyLong(ref, values[i]);
-        valField.setBytes(ref, valueType);
+        valField.setValue(ref);
         break;
       case BYTES_VAR_DEREF:
       case BYTES_VAR_SORTED:
@@ -227,12 +257,11 @@ public class TestTypePromotion extends L
           BytesRefUtils.copyLong(ref, random.nextLong());
           values[i] = BytesRefUtils.asLong(ref);
         }
-        valField.setBytes(ref, valueType);
+        valField.setValue(ref);
         break;
 
       default:
         fail("unexpected value " + valueType);
-
       }
       doc.add(valField);
       writer.addDocument(doc);
@@ -267,7 +296,7 @@ public class TestTypePromotion extends L
     int num_1 = atLeast(200);
     int num_2 = atLeast(200);
     long[] values = new long[num_1 + num_2];
-    index(writer, new DocValuesField("promote"),
+    index(writer,
         randomValueType(INTEGERS, random), values, 0, num_1);
     writer.commit();
     
@@ -275,8 +304,8 @@ public class TestTypePromotion extends L
       // once in a while use addIndexes
       Directory dir_2 = newDirectory() ;
       IndexWriter writer_2 = new IndexWriter(dir_2,
-          newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)));
-      index(writer_2, new DocValuesField("promote"),
+                       newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)));
+      index(writer_2,
           randomValueType(random.nextBoolean() ? UNSORTED_BYTES : SORTED_BYTES, random), values, num_1, num_2);
       writer_2.commit();
       writer_2.close();
@@ -290,7 +319,7 @@ public class TestTypePromotion extends L
       }
       dir_2.close();
     } else {
-      index(writer, new DocValuesField("promote"),
+      index(writer,
           randomValueType(random.nextBoolean() ? UNSORTED_BYTES : SORTED_BYTES, random), values, num_1, num_2);
       writer.commit();
     }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestUniqueTermCount.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestUniqueTermCount.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestUniqueTermCount.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/index/TestUniqueTermCount.java Wed Jan 18 22:28:07 2012
@@ -102,8 +102,8 @@ public class TestUniqueTermCount extends
   class TestSimilarity extends DefaultSimilarity {
 
     @Override
-    public byte computeNorm(FieldInvertState state) {
-      return (byte) state.getUniqueTermCount();
+    public void computeNorm(FieldInvertState state, Norm norm) {
+      norm.setByte((byte) state.getUniqueTermCount());
     }
   }
 }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java Wed Jan 18 22:28:07 2012
@@ -20,6 +20,7 @@ package org.apache.lucene.search;
 import java.io.IOException;
 
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.search.similarities.Similarity;
 import org.apache.lucene.search.similarities.SimilarityProvider;
 import org.apache.lucene.util.Bits;
@@ -261,7 +262,7 @@ final class JustCompileSearch {
     }
 
     @Override
-    public byte computeNorm(FieldInvertState state) {
+    public void computeNorm(FieldInvertState state, Norm norm) {
       throw new UnsupportedOperationException(UNSUPPORTED_MSG);
     }
   }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java Wed Jan 18 22:28:07 2012
@@ -24,6 +24,7 @@ import org.apache.lucene.document.FieldT
 import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.SlowMultiReaderWrapper;
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.RandomIndexWriter;
@@ -66,9 +67,9 @@ public class TestDisjunctionMaxQuery ext
     }
     
     @Override
-    public byte computeNorm(FieldInvertState state) {
+    public void computeNorm(FieldInvertState state, Norm norm) {
       // Disable length norm
-      return encodeNormValue(state.getBoost());
+      norm.setByte(encodeNormValue(state.getBoost()));
     }
     
     @Override

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDocValuesScoring.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDocValuesScoring.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDocValuesScoring.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestDocValuesScoring.java Wed Jan 18 22:28:07 2012
@@ -20,16 +20,18 @@ package org.apache.lucene.search;
 import java.io.IOException;
 
 import org.apache.lucene.codecs.Codec;
+import org.apache.lucene.document.DocValuesField;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.document.DocValuesField;
 import org.apache.lucene.document.TextField;
+import org.apache.lucene.index.DocValues.Source;
+import org.apache.lucene.index.DocValues;
 import org.apache.lucene.index.FieldInvertState;
+import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
-import org.apache.lucene.index.DocValues.Source;
-import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.lucene.search.similarities.Similarity;
 import org.apache.lucene.search.similarities.SimilarityProvider;
 import org.apache.lucene.store.Directory;
@@ -54,18 +56,18 @@ public class TestDocValuesScoring extend
     Document doc = new Document();
     Field field = newField("foo", "", TextField.TYPE_UNSTORED);
     doc.add(field);
-    DocValuesField dvField = new DocValuesField("foo_boost");
+    DocValuesField dvField = new DocValuesField("foo_boost", 0.0f, DocValues.Type.FLOAT_32);
     doc.add(dvField);
     Field field2 = newField("bar", "", TextField.TYPE_UNSTORED);
     doc.add(field2);
     
     field.setValue("quick brown fox");
     field2.setValue("quick brown fox");
-    dvField.setFloat(2f); // boost x2
+    dvField.setValue(2f); // boost x2
     iw.addDocument(doc);
     field.setValue("jumps over lazy brown dog");
     field2.setValue("jumps over lazy brown dog");
-    dvField.setFloat(4f); // boost x4
+    dvField.setValue(4f); // boost x4
     iw.addDocument(doc);
     IndexReader ir = iw.getReader();
     iw.close();
@@ -151,8 +153,8 @@ public class TestDocValuesScoring extend
     }
     
     @Override
-    public byte computeNorm(FieldInvertState state) {
-      return sim.computeNorm(state);
+    public void computeNorm(FieldInvertState state, Norm norm) {
+      sim.computeNorm(state, norm);
     }
 
     @Override

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestFieldCache.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestFieldCache.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestFieldCache.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestFieldCache.java Wed Jan 18 22:28:07 2012
@@ -78,7 +78,7 @@ public class TestFieldCache extends Luce
       }
 
       if (i%2 == 0) {
-        doc.add(new NumericField("numInt").setIntValue(i));
+        doc.add(new NumericField("numInt", i));
       }
 
       // sometimes skip the field:
@@ -98,7 +98,8 @@ public class TestFieldCache extends Luce
       }
       writer.addDocument(doc);
     }
-    reader = writer.getReader();
+    IndexReader r = writer.getReader();
+    reader = new SlowMultiReaderWrapper(r);
     writer.close();
   }
 
@@ -293,8 +294,9 @@ public class TestFieldCache extends Luce
     Directory dir = newDirectory();
     IndexWriter writer= new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)).setMaxBufferedDocs(500));
     IndexReader r = IndexReader.open(writer, true);
-    FieldCache.DEFAULT.getTerms(r, "foobar");
-    FieldCache.DEFAULT.getTermsIndex(r, "foobar");
+    SlowMultiReaderWrapper reader = new SlowMultiReaderWrapper(r);
+    FieldCache.DEFAULT.getTerms(reader, "foobar");
+    FieldCache.DEFAULT.getTermsIndex(reader, "foobar");
     writer.close();
     r.close();
     dir.close();

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiPhraseQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiPhraseQuery.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiPhraseQuery.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiPhraseQuery.java Wed Jan 18 22:28:07 2012
@@ -17,36 +17,38 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.IndexWriterConfig;
-import org.apache.lucene.index.RandomIndexWriter;
-import org.apache.lucene.index.Term;
-import org.apache.lucene.index.TermsEnum;
-import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.MultiFields;
-import org.apache.lucene.store.Directory;
-import org.apache.lucene.util.BytesRef;
-import org.apache.lucene.util.TermContext;
+import java.io.IOException;
+import java.io.Reader;
+import java.util.Collection;
+import java.util.LinkedList;
+
 import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.CannedAnalyzer;
+import org.apache.lucene.analysis.Token;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.Tokenizer;
-import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
+import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.StringField;
 import org.apache.lucene.document.TextField;
+import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.RandomIndexWriter;
+import org.apache.lucene.index.Term;
+import org.apache.lucene.index.TermsEnum;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.similarities.DefaultSimilarity;
 import org.apache.lucene.search.similarities.DefaultSimilarityProvider;
 import org.apache.lucene.search.similarities.Similarity;
+import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.RAMDirectory;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
-
-import java.io.IOException;
-import java.util.Collection;
-import java.util.LinkedList;
-import java.io.Reader;
+import org.apache.lucene.util.TermContext;
 
 /**
  * This class tests the MultiPhraseQuery class.
@@ -329,68 +331,18 @@ public class TestMultiPhraseQuery extend
     indexStore.close();
   }
 
-  private static class TokenAndPos {
-    public final String token;
-    public final int pos;
-    public TokenAndPos(String token, int pos) {
-      this.token = token;
-      this.pos = pos;
-    }
-  }
-
-  private static class CannedAnalyzer extends Analyzer {
-    private final TokenAndPos[] tokens;
-    
-    public CannedAnalyzer(TokenAndPos[] tokens) {
-      this.tokens = tokens;
-    }
-
-    @Override
-    public TokenStreamComponents createComponents(String fieldName, Reader reader) {
-      return new TokenStreamComponents(new CannedTokenizer(tokens));
-    }
-  }
-
-  private static class CannedTokenizer extends Tokenizer {
-    private final TokenAndPos[] tokens;
-    private int upto = 0;
-    private int lastPos = 0;
-    private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
-    private final PositionIncrementAttribute posIncrAtt = addAttribute(PositionIncrementAttribute.class);
-
-    public CannedTokenizer(TokenAndPos[] tokens) {
-      this.tokens = tokens;
-    }
-
-    @Override
-    public final boolean incrementToken() throws IOException {
-      clearAttributes();      
-      if (upto < tokens.length) {
-        final TokenAndPos token = tokens[upto++];
-        termAtt.setEmpty();
-        termAtt.append(token.token);
-        posIncrAtt.setPositionIncrement(token.pos - lastPos);
-        lastPos = token.pos;
-        return true;
-      } else {
-        return false;
-      }
-    }
-
-    @Override
-    public void reset() throws IOException {
-      super.reset();
-      this.upto = 0;
-      this.lastPos = 0;
-    }
-  }
-
   public void testZeroPosIncr() throws IOException {
     Directory dir = new RAMDirectory();
-    final TokenAndPos[] tokens = new TokenAndPos[3];
-    tokens[0] = new TokenAndPos("a", 0);
-    tokens[1] = new TokenAndPos("b", 0);
-    tokens[2] = new TokenAndPos("c", 0);
+    final Token[] tokens = new Token[3];
+    tokens[0] = new Token();
+    tokens[0].append("a");
+    tokens[0].setPositionIncrement(1);
+    tokens[1] = new Token();
+    tokens[1].append("b");
+    tokens[1].setPositionIncrement(0);
+    tokens[2] = new Token();
+    tokens[2].append("c");
+    tokens[2].setPositionIncrement(0);
 
     RandomIndexWriter writer = new RandomIndexWriter(random, dir, new CannedAnalyzer(tokens));
     Document doc = new Document();
@@ -429,40 +381,47 @@ public class TestMultiPhraseQuery extend
     dir.close();
   }
 
-  private final static TokenAndPos[] INCR_0_DOC_TOKENS = new TokenAndPos[] {
-      new TokenAndPos("x", 0),
-      new TokenAndPos("a", 1),
-      new TokenAndPos("1", 1),
-      new TokenAndPos("m", 2), // not existing, relying on slop=2
-      new TokenAndPos("b", 3),
-      new TokenAndPos("1", 3),
-      new TokenAndPos("n", 4), // not existing, relying on slop=2
-      new TokenAndPos("c", 5),
-      new TokenAndPos("y", 6)
+  private static Token makeToken(String text, int posIncr) {
+    final Token t = new Token();
+    t.append(text);
+    t.setPositionIncrement(posIncr);
+    return t;
+  }
+
+  private final static Token[] INCR_0_DOC_TOKENS = new Token[] {
+    makeToken("x", 1),
+    makeToken("a", 1),
+    makeToken("1", 0),
+    makeToken("m", 1),  // not existing, relying on slop=2
+    makeToken("b", 1),
+    makeToken("1", 0),
+    makeToken("n", 1), // not existing, relying on slop=2
+    makeToken("c", 1),
+    makeToken("y", 1)
   };
   
-  private final static TokenAndPos[] INCR_0_QUERY_TOKENS_AND = new TokenAndPos[] {
-      new TokenAndPos("a", 0),
-      new TokenAndPos("1", 0),
-      new TokenAndPos("b", 1),
-      new TokenAndPos("1", 1),
-      new TokenAndPos("c", 2)
+  private final static Token[] INCR_0_QUERY_TOKENS_AND = new Token[] {
+    makeToken("a", 1),
+    makeToken("1", 0),
+    makeToken("b", 1),
+    makeToken("1", 0),
+    makeToken("c", 1)
   };
   
-  private final static TokenAndPos[][] INCR_0_QUERY_TOKENS_AND_OR_MATCH = new TokenAndPos[][] {
-      { new TokenAndPos("a", 0) },
-      { new TokenAndPos("x", 0), new TokenAndPos("1", 0) },
-      { new TokenAndPos("b", 1) },
-      { new TokenAndPos("x", 1), new TokenAndPos("1", 1) },
-      { new TokenAndPos("c", 2) }
+  private final static Token[][] INCR_0_QUERY_TOKENS_AND_OR_MATCH = new Token[][] {
+    { makeToken("a", 1) },
+    { makeToken("x", 1), makeToken("1", 0) },
+    { makeToken("b", 2) },
+    { makeToken("x", 2), makeToken("1", 0) },
+    { makeToken("c", 3) }
   };
   
-  private final static TokenAndPos[][] INCR_0_QUERY_TOKENS_AND_OR_NO_MATCHN = new TokenAndPos[][] {
-      { new TokenAndPos("x", 0) },
-      { new TokenAndPos("a", 0), new TokenAndPos("1", 0) },
-      { new TokenAndPos("x", 1) },
-      { new TokenAndPos("b", 1), new TokenAndPos("1", 1) },
-      { new TokenAndPos("c", 2) }
+  private final static Token[][] INCR_0_QUERY_TOKENS_AND_OR_NO_MATCHN = new Token[][] {
+    { makeToken("x", 1) },
+    { makeToken("a", 1), makeToken("1", 0) },
+    { makeToken("x", 2) },
+    { makeToken("b", 2), makeToken("1", 0) },
+    { makeToken("c", 3) }
   };
   
   /**
@@ -515,8 +474,10 @@ public class TestMultiPhraseQuery extend
    */
   public void testZeroPosIncrSloppyPqAnd() throws IOException {
     final PhraseQuery pq = new PhraseQuery();
-    for (TokenAndPos tap : INCR_0_QUERY_TOKENS_AND) {
-      pq.add(new Term("field",tap.token), tap.pos);
+    int pos = -1;
+    for (Token tap : INCR_0_QUERY_TOKENS_AND) {
+      pos += tap.getPositionIncrement();
+      pq.add(new Term("field",tap.toString()), pos);
     }
     doTestZeroPosIncrSloppy(pq, 0);
     pq.setSlop(1);
@@ -530,8 +491,10 @@ public class TestMultiPhraseQuery extend
    */
   public void testZeroPosIncrSloppyMpqAnd() throws IOException {
     final MultiPhraseQuery mpq = new MultiPhraseQuery();
-    for (TokenAndPos tap : INCR_0_QUERY_TOKENS_AND) {
-      mpq.add(new Term[]{new Term("field",tap.token)}, tap.pos); //AND logic
+    int pos = -1;
+    for (Token tap : INCR_0_QUERY_TOKENS_AND) {
+      pos += tap.getPositionIncrement();
+      mpq.add(new Term[]{new Term("field",tap.toString())}, pos); //AND logic
     }
     doTestZeroPosIncrSloppy(mpq, 0);
     mpq.setSlop(1);
@@ -545,9 +508,9 @@ public class TestMultiPhraseQuery extend
    */
   public void testZeroPosIncrSloppyMpqAndOrMatch() throws IOException {
     final MultiPhraseQuery mpq = new MultiPhraseQuery();
-    for (TokenAndPos tap[] : INCR_0_QUERY_TOKENS_AND_OR_MATCH) {
+    for (Token tap[] : INCR_0_QUERY_TOKENS_AND_OR_MATCH) {
       Term[] terms = tapTerms(tap);
-      final int pos = tap[0].pos;
+      final int pos = tap[0].getPositionIncrement()-1;
       mpq.add(terms, pos); //AND logic in pos, OR across lines 
     }
     doTestZeroPosIncrSloppy(mpq, 0);
@@ -562,9 +525,9 @@ public class TestMultiPhraseQuery extend
    */
   public void testZeroPosIncrSloppyMpqAndOrNoMatch() throws IOException {
     final MultiPhraseQuery mpq = new MultiPhraseQuery();
-    for (TokenAndPos tap[] : INCR_0_QUERY_TOKENS_AND_OR_NO_MATCHN) {
+    for (Token tap[] : INCR_0_QUERY_TOKENS_AND_OR_NO_MATCHN) {
       Term[] terms = tapTerms(tap);
-      final int pos = tap[0].pos;
+      final int pos = tap[0].getPositionIncrement()-1;
       mpq.add(terms, pos); //AND logic in pos, OR across lines 
     }
     doTestZeroPosIncrSloppy(mpq, 0);
@@ -572,10 +535,10 @@ public class TestMultiPhraseQuery extend
     doTestZeroPosIncrSloppy(mpq, 0);
   }
 
-  private Term[] tapTerms(TokenAndPos[] tap) {
+  private Term[] tapTerms(Token[] tap) {
     Term[] terms = new Term[tap.length];
     for (int i=0; i<terms.length; i++) {
-      terms[i] = new Term("field",tap[i].token);
+      terms[i] = new Term("field",tap[i].toString());
     }
     return terms;
   }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiValuedNumericRangeQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiValuedNumericRangeQuery.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiValuedNumericRangeQuery.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestMultiValuedNumericRangeQuery.java Wed Jan 18 22:28:07 2012
@@ -52,7 +52,7 @@ public class TestMultiValuedNumericRange
       for (int m=0, c=random.nextInt(10); m<=c; m++) {
         int value = random.nextInt(Integer.MAX_VALUE);
         doc.add(newField("asc", format.format(value), StringField.TYPE_UNSTORED));
-        doc.add(new NumericField("trie").setIntValue(value));
+        doc.add(new NumericField("trie", value));
       }
       writer.addDocument(doc);
     }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java Wed Jan 18 22:28:07 2012
@@ -19,9 +19,10 @@ package org.apache.lucene.search;
 
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
+import org.apache.lucene.document.FieldType;
 import org.apache.lucene.document.NumericField;
-import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.SlowMultiReaderWrapper;
@@ -58,15 +59,40 @@ public class TestNumericRangeQuery32 ext
         newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random))
         .setMaxBufferedDocs(_TestUtil.nextInt(random, 100, 1000))
         .setMergePolicy(newLogMergePolicy()));
-  
+    
+    final FieldType storedInt = NumericField.getFieldType(NumericField.DataType.INT, true);
+
+    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);
+
+    final FieldType storedIntNone = new FieldType(storedInt);
+    storedIntNone.setNumericPrecisionStep(Integer.MAX_VALUE);
+
+    final FieldType unstoredInt = NumericField.getFieldType(NumericField.DataType.INT, false);
+
+    final FieldType unstoredInt8 = new FieldType(unstoredInt);
+    unstoredInt8.setNumericPrecisionStep(8);
+
+    final FieldType unstoredInt4 = new FieldType(unstoredInt);
+    unstoredInt4.setNumericPrecisionStep(4);
+
+    final FieldType unstoredInt2 = new FieldType(unstoredInt);
+    unstoredInt2.setNumericPrecisionStep(2);
+
     NumericField
-	    field8 = new NumericField("field8", 8, NumericField.TYPE_STORED),
-	    field4 = new NumericField("field4", 4, NumericField.TYPE_STORED),
-	    field2 = new NumericField("field2", 2, NumericField.TYPE_STORED),
-	    fieldNoTrie = new NumericField("field"+Integer.MAX_VALUE, Integer.MAX_VALUE, rarely() ? NumericField.TYPE_STORED : NumericField.TYPE_UNSTORED),
-	    ascfield8 = new NumericField("ascfield8", 8, NumericField.TYPE_UNSTORED),
-	    ascfield4 = new NumericField("ascfield4", 4, NumericField.TYPE_UNSTORED),
-	    ascfield2 = new NumericField("ascfield2", 2, NumericField.TYPE_UNSTORED);
+      field8 = new NumericField("field8", 0, storedInt8),
+      field4 = new NumericField("field4", 0, storedInt4),
+      field2 = new NumericField("field2", 0, storedInt2),
+      fieldNoTrie = new NumericField("field"+Integer.MAX_VALUE, 0, storedIntNone),
+      ascfield8 = new NumericField("ascfield8", 0, unstoredInt8),
+      ascfield4 = new NumericField("ascfield4", 0, unstoredInt4),
+      ascfield2 = new NumericField("ascfield2", 0, unstoredInt2);
     
     Document doc = new Document();
     // add fields, that have a distance to test general functionality
@@ -77,15 +103,15 @@ public class TestNumericRangeQuery32 ext
     // Add a series of noDocs docs with increasing int values
     for (int l=0; l<noDocs; l++) {
       int val=distance*l+startOffset;
-      field8.setIntValue(val);
-      field4.setIntValue(val);
-      field2.setIntValue(val);
-      fieldNoTrie.setIntValue(val);
+      field8.setValue(val);
+      field4.setValue(val);
+      field2.setValue(val);
+      fieldNoTrie.setValue(val);
 
       val=l-(noDocs/2);
-      ascfield8.setIntValue(val);
-      ascfield4.setIntValue(val);
-      ascfield2.setIntValue(val);
+      ascfield8.setValue(val);
+      ascfield4.setValue(val);
+      ascfield2.setValue(val);
       writer.addDocument(doc);
     }
   
@@ -143,9 +169,9 @@ public class TestNumericRangeQuery32 ext
       assertNotNull(sd);
       assertEquals("Score doc count"+type, count, sd.length );
       Document doc=searcher.doc(sd[0].doc);
-      assertEquals("First doc"+type, 2*distance+startOffset, Integer.parseInt(doc.get(field)) );
+      assertEquals("First doc"+type, 2*distance+startOffset, doc.getField(field).numericValue().intValue());
       doc=searcher.doc(sd[sd.length-1].doc);
-      assertEquals("Last doc"+type, (1+count)*distance+startOffset, Integer.parseInt(doc.get(field)) );
+      assertEquals("Last doc"+type, (1+count)*distance+startOffset, doc.getField(field).numericValue().intValue());
     }
   }
 
@@ -197,9 +223,9 @@ public class TestNumericRangeQuery32 ext
     assertNotNull(sd);
     assertEquals("Score doc count", count, sd.length );
     Document doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("First doc", startOffset, doc.getField(field).numericValue().intValue());
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (count-1)*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("Last doc", (count-1)*distance+startOffset, doc.getField(field).numericValue().intValue());
     
     q=NumericRangeQuery.newIntRange(field, precisionStep, null, upper, false, true);
     topDocs = searcher.search(q, null, noDocs, Sort.INDEXORDER);
@@ -207,9 +233,9 @@ public class TestNumericRangeQuery32 ext
     assertNotNull(sd);
     assertEquals("Score doc count", count, sd.length );
     doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("First doc", startOffset, doc.getField(field).numericValue().intValue());
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (count-1)*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("Last doc", (count-1)*distance+startOffset, doc.getField(field).numericValue().intValue());
   }
   
   @Test
@@ -237,9 +263,9 @@ public class TestNumericRangeQuery32 ext
     assertNotNull(sd);
     assertEquals("Score doc count", noDocs-count, sd.length );
     Document doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", count*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("First doc", count*distance+startOffset, doc.getField(field).numericValue().intValue());
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (noDocs-1)*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("Last doc", (noDocs-1)*distance+startOffset, doc.getField(field).numericValue().intValue());
 
     q=NumericRangeQuery.newIntRange(field, precisionStep, lower, null, true, false);
     topDocs = searcher.search(q, null, noDocs, Sort.INDEXORDER);
@@ -247,9 +273,9 @@ public class TestNumericRangeQuery32 ext
     assertNotNull(sd);
     assertEquals("Score doc count", noDocs-count, sd.length );
     doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", count*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("First doc", count*distance+startOffset, doc.getField(field).numericValue().intValue() );
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (noDocs-1)*distance+startOffset, Integer.parseInt(doc.get(field)) );
+    assertEquals("Last doc", (noDocs-1)*distance+startOffset, doc.getField(field).numericValue().intValue() );
   }
   
   @Test
@@ -273,23 +299,23 @@ public class TestNumericRangeQuery32 ext
     RandomIndexWriter writer = new RandomIndexWriter(random, dir,
       newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)));
     Document doc = new Document();
-    doc.add(new NumericField("float").setFloatValue(Float.NEGATIVE_INFINITY));
-    doc.add(new NumericField("int").setIntValue(Integer.MIN_VALUE));
+    doc.add(new NumericField("float", Float.NEGATIVE_INFINITY));
+    doc.add(new NumericField("int", Integer.MIN_VALUE));
     writer.addDocument(doc);
     
     doc = new Document();
-    doc.add(new NumericField("float").setFloatValue(Float.POSITIVE_INFINITY));
-    doc.add(new NumericField("int").setIntValue(Integer.MAX_VALUE));
+    doc.add(new NumericField("float", Float.POSITIVE_INFINITY));
+    doc.add(new NumericField("int", Integer.MAX_VALUE));
     writer.addDocument(doc);
     
     doc = new Document();
-    doc.add(new NumericField("float").setFloatValue(0.0f));
-    doc.add(new NumericField("int").setIntValue(0));
+    doc.add(new NumericField("float", 0.0f));
+    doc.add(new NumericField("int", 0));
     writer.addDocument(doc);
     
     for (float f : TestNumericUtils.FLOAT_NANs) {
       doc = new Document();
-      doc.add(new NumericField("float").setFloatValue(f));
+      doc.add(new NumericField("float", f));
       writer.addDocument(doc);
     }
     
@@ -552,9 +578,9 @@ public class TestNumericRangeQuery32 ext
       if (topDocs.totalHits==0) continue;
       ScoreDoc[] sd = topDocs.scoreDocs;
       assertNotNull(sd);
-      int last=Integer.parseInt(searcher.doc(sd[0].doc).get(field));
+      int last = searcher.doc(sd[0].doc).getField(field).numericValue().intValue();
       for (int j=1; j<sd.length; j++) {
-        int act=Integer.parseInt(searcher.doc(sd[j].doc).get(field));
+        int act = searcher.doc(sd[j].doc).getField(field).numericValue().intValue();
         assertTrue("Docs should be sorted backwards", last>act );
         last=act;
       }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery64.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery64.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery64.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestNumericRangeQuery64.java Wed Jan 18 22:28:07 2012
@@ -19,14 +19,15 @@ package org.apache.lucene.search;
 
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
+import org.apache.lucene.document.FieldType;
 import org.apache.lucene.document.NumericField;
+import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.SlowMultiReaderWrapper;
 import org.apache.lucene.index.Terms;
 import org.apache.lucene.index.TermsEnum;
-import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
@@ -58,18 +59,49 @@ public class TestNumericRangeQuery64 ext
         newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random))
         .setMaxBufferedDocs(_TestUtil.nextInt(random, 100, 1000))
         .setMergePolicy(newLogMergePolicy()));
-    
+
+    final FieldType storedLong = NumericField.getFieldType(NumericField.DataType.LONG, true);
+
+    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);
+
+    final FieldType storedLongNone = new FieldType(storedLong);
+    storedLongNone.setNumericPrecisionStep(Integer.MAX_VALUE);
+
+    final FieldType unstoredLong = NumericField.getFieldType(NumericField.DataType.LONG, false);
+
+    final FieldType unstoredLong8 = new FieldType(unstoredLong);
+    unstoredLong8.setNumericPrecisionStep(8);
+
+    final FieldType unstoredLong6 = new FieldType(unstoredLong);
+    unstoredLong6.setNumericPrecisionStep(6);
+
+    final FieldType unstoredLong4 = new FieldType(unstoredLong);
+    unstoredLong4.setNumericPrecisionStep(4);
+
+    final FieldType unstoredLong2 = new FieldType(unstoredLong);
+    unstoredLong2.setNumericPrecisionStep(2);
+
     NumericField
-      field8 = new NumericField("field8", 8, NumericField.TYPE_STORED),
-      field6 = new NumericField("field6", 6, NumericField.TYPE_STORED),
-      field4 = new NumericField("field4", 4, NumericField.TYPE_STORED),
-      field2 = new NumericField("field2", 2, NumericField.TYPE_STORED),
-      fieldNoTrie = new NumericField("field"+Integer.MAX_VALUE, Integer.MAX_VALUE, rarely() ? NumericField.TYPE_STORED : NumericField.TYPE_UNSTORED),
-      ascfield8 = new NumericField("ascfield8", 8, NumericField.TYPE_UNSTORED),
-      ascfield6 = new NumericField("ascfield6", 6, NumericField.TYPE_UNSTORED),
-      ascfield4 = new NumericField("ascfield4", 4, NumericField.TYPE_UNSTORED),
-      ascfield2 = new NumericField("ascfield2", 2, NumericField.TYPE_UNSTORED);
-    
+      field8 = new NumericField("field8", 0L, storedLong8),
+      field6 = new NumericField("field6", 0L, storedLong6),
+      field4 = new NumericField("field4", 0L, storedLong4),
+      field2 = new NumericField("field2", 0L, storedLong2),
+      fieldNoTrie = new NumericField("field"+Integer.MAX_VALUE, 0L, storedLongNone),
+      ascfield8 = new NumericField("ascfield8", 0L, unstoredLong8),
+      ascfield6 = new NumericField("ascfield6", 0L, unstoredLong6),
+      ascfield4 = new NumericField("ascfield4", 0L, unstoredLong4),
+      ascfield2 = new NumericField("ascfield2", 0L, unstoredLong2);
+
     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); doc.add(fieldNoTrie);
@@ -79,17 +111,17 @@ public class TestNumericRangeQuery64 ext
     // Add a series of noDocs docs with increasing long values, by updating the fields
     for (int l=0; l<noDocs; l++) {
       long val=distance*l+startOffset;
-      field8.setLongValue(val);
-      field6.setLongValue(val);
-      field4.setLongValue(val);
-      field2.setLongValue(val);
-      fieldNoTrie.setLongValue(val);
+      field8.setValue(val);
+      field6.setValue(val);
+      field4.setValue(val);
+      field2.setValue(val);
+      fieldNoTrie.setValue(val);
 
       val=l-(noDocs/2);
-      ascfield8.setLongValue(val);
-      ascfield6.setLongValue(val);
-      ascfield4.setLongValue(val);
-      ascfield2.setLongValue(val);
+      ascfield8.setValue(val);
+      ascfield6.setValue(val);
+      ascfield4.setValue(val);
+      ascfield2.setValue(val);
       writer.addDocument(doc);
     }
     reader = writer.getReader();
@@ -146,9 +178,9 @@ public class TestNumericRangeQuery64 ext
       assertNotNull(sd);
       assertEquals("Score doc count"+type, count, sd.length );
       Document doc=searcher.doc(sd[0].doc);
-      assertEquals("First doc"+type, 2*distance+startOffset, Long.parseLong(doc.get(field)) );
+      assertEquals("First doc"+type, 2*distance+startOffset, doc.getField(field).numericValue().longValue() );
       doc=searcher.doc(sd[sd.length-1].doc);
-      assertEquals("Last doc"+type, (1+count)*distance+startOffset, Long.parseLong(doc.get(field)) );
+      assertEquals("Last doc"+type, (1+count)*distance+startOffset, doc.getField(field).numericValue().longValue() );
     }
   }
 
@@ -206,9 +238,9 @@ public class TestNumericRangeQuery64 ext
     assertNotNull(sd);
     assertEquals("Score doc count", count, sd.length );
     Document doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("First doc", startOffset, doc.getField(field).numericValue().longValue() );
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (count-1)*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("Last doc", (count-1)*distance+startOffset, doc.getField(field).numericValue().longValue() );
 
     q=NumericRangeQuery.newLongRange(field, precisionStep, null, upper, false, true);
     topDocs = searcher.search(q, null, noDocs, Sort.INDEXORDER);
@@ -216,9 +248,9 @@ public class TestNumericRangeQuery64 ext
     assertNotNull(sd);
     assertEquals("Score doc count", count, sd.length );
     doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("First doc", startOffset, doc.getField(field).numericValue().longValue() );
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (count-1)*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("Last doc", (count-1)*distance+startOffset, doc.getField(field).numericValue().longValue() );
   }
   
   @Test
@@ -251,9 +283,9 @@ public class TestNumericRangeQuery64 ext
     assertNotNull(sd);
     assertEquals("Score doc count", noDocs-count, sd.length );
     Document doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", count*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("First doc", count*distance+startOffset, doc.getField(field).numericValue().longValue() );
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (noDocs-1)*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("Last doc", (noDocs-1)*distance+startOffset, doc.getField(field).numericValue().longValue() );
 
     q=NumericRangeQuery.newLongRange(field, precisionStep, lower, null, true, false);
     topDocs = searcher.search(q, null, noDocs, Sort.INDEXORDER);
@@ -261,9 +293,9 @@ public class TestNumericRangeQuery64 ext
     assertNotNull(sd);
     assertEquals("Score doc count", noDocs-count, sd.length );
     doc=searcher.doc(sd[0].doc);
-    assertEquals("First doc", count*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("First doc", count*distance+startOffset, doc.getField(field).numericValue().longValue() );
     doc=searcher.doc(sd[sd.length-1].doc);
-    assertEquals("Last doc", (noDocs-1)*distance+startOffset, Long.parseLong(doc.get(field)) );
+    assertEquals("Last doc", (noDocs-1)*distance+startOffset, doc.getField(field).numericValue().longValue() );
   }
   
   @Test
@@ -292,23 +324,23 @@ public class TestNumericRangeQuery64 ext
     RandomIndexWriter writer = new RandomIndexWriter(random, dir,
       newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)));
     Document doc = new Document();
-    doc.add(new NumericField("double").setDoubleValue(Double.NEGATIVE_INFINITY));
-    doc.add(new NumericField("long").setLongValue(Long.MIN_VALUE));
+    doc.add(new NumericField("double", Double.NEGATIVE_INFINITY));
+    doc.add(new NumericField("long", Long.MIN_VALUE));
     writer.addDocument(doc);
     
     doc = new Document();
-    doc.add(new NumericField("double").setDoubleValue(Double.POSITIVE_INFINITY));
-    doc.add(new NumericField("long").setLongValue(Long.MAX_VALUE));
+    doc.add(new NumericField("double", Double.POSITIVE_INFINITY));
+    doc.add(new NumericField("long", Long.MAX_VALUE));
     writer.addDocument(doc);
     
     doc = new Document();
-    doc.add(new NumericField("double").setDoubleValue(0.0));
-    doc.add(new NumericField("long").setLongValue(0L));
+    doc.add(new NumericField("double", 0.0));
+    doc.add(new NumericField("long", 0L));
     writer.addDocument(doc);
     
     for (double d : TestNumericUtils.DOUBLE_NANs) {
       doc = new Document();
-      doc.add(new NumericField("double").setDoubleValue(d));
+      doc.add(new NumericField("double", d));
       writer.addDocument(doc);
     }
     
@@ -586,9 +618,9 @@ public class TestNumericRangeQuery64 ext
       if (topDocs.totalHits==0) continue;
       ScoreDoc[] sd = topDocs.scoreDocs;
       assertNotNull(sd);
-      long last=Long.parseLong(searcher.doc(sd[0].doc).get(field));
+      long last=searcher.doc(sd[0].doc).getField(field).numericValue().longValue();
       for (int j=1; j<sd.length; j++) {
-        long act=Long.parseLong(searcher.doc(sd[j].doc).get(field));
+        long act=searcher.doc(sd[j].doc).getField(field).numericValue().longValue();
         assertTrue("Docs should be sorted backwards", last>act );
         last=act;
       }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestPositionIncrement.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestPositionIncrement.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestPositionIncrement.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestPositionIncrement.java Wed Jan 18 22:28:07 2012
@@ -42,8 +42,6 @@ import org.apache.lucene.search.spans.Sp
 import org.apache.lucene.search.spans.SpanTermQuery;
 import org.apache.lucene.search.spans.Spans;
 import org.apache.lucene.util.LuceneTestCase;
-import org.apache.lucene.util.automaton.CharacterRunAutomaton;
-import org.apache.lucene.util.automaton.RegExp;
 import org.apache.lucene.util.BytesRef;
 
 /**
@@ -102,7 +100,8 @@ public class TestPositionIncrement exten
     DocsAndPositionsEnum pos = MultiFields.getTermPositionsEnum(searcher.getIndexReader(),
                                                                 MultiFields.getLiveDocs(searcher.getIndexReader()),
                                                                 "field",
-                                                                new BytesRef("1"));
+                                                                new BytesRef("1"),
+                                                                false);
     pos.nextDoc();
     // first token should be at position 0
     assertEquals(0, pos.nextPosition());
@@ -110,7 +109,8 @@ public class TestPositionIncrement exten
     pos = MultiFields.getTermPositionsEnum(searcher.getIndexReader(),
                                            MultiFields.getLiveDocs(searcher.getIndexReader()),
                                            "field",
-                                           new BytesRef("2"));
+                                           new BytesRef("2"),
+                                           false);
     pos.nextDoc();
     // second token should be at position 2
     assertEquals(2, pos.nextPosition());
@@ -200,10 +200,6 @@ public class TestPositionIncrement exten
     store.close();
   }
 
-  // stoplist that accepts case-insensitive "stop"
-  private static final CharacterRunAutomaton stopStopList = 
-    new CharacterRunAutomaton(new RegExp("[sS][tT][oO][pP]").toAutomaton());
-  
   public void testPayloadsPos0() throws Exception {
     Directory dir = newDirectory();
     RandomIndexWriter writer = new RandomIndexWriter(random, dir, new MockPayloadAnalyzer());
@@ -217,7 +213,8 @@ public class TestPositionIncrement exten
 
     DocsAndPositionsEnum tp = r.termPositionsEnum(r.getLiveDocs(),
                                                   "content",
-                                                  new BytesRef("a"));
+                                                  new BytesRef("a"),
+                                                  false);
     
     int count = 0;
     assertTrue(tp.nextDoc() != DocsAndPositionsEnum.NO_MORE_DOCS);

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarity.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarity.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarity.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarity.java Wed Jan 18 22:28:07 2012
@@ -24,6 +24,7 @@ import java.io.IOException;
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.similarities.DefaultSimilarity;
@@ -45,7 +46,7 @@ public class TestSimilarity extends Luce
     public float coord(int overlap, int maxOverlap) { return 1.0f; }
     public Similarity get(String field) {
       return new DefaultSimilarity() {
-        @Override public byte computeNorm(FieldInvertState state) { return encodeNormValue(state.getBoost()); }
+        @Override public void computeNorm(FieldInvertState state, Norm norm) { norm.setByte(encodeNormValue(state.getBoost())); }
         @Override public float tf(float freq) { return freq; }
         @Override public float sloppyFreq(int distance) { return 2.0f; }
         @Override public float idf(int docFreq, int numDocs) { return 1.0f; }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java Wed Jan 18 22:28:07 2012
@@ -25,6 +25,7 @@ import org.apache.lucene.index.FieldInve
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.lucene.index.MultiDocValues;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.similarities.Similarity;
@@ -111,9 +112,10 @@ public class TestSimilarityProvider exte
   }
   
   private class Sim1 extends TFIDFSimilarity {
+
     @Override
-    public byte computeNorm(FieldInvertState state) {
-      return encodeNormValue(1f);
+    public void computeNorm(FieldInvertState state, Norm norm) {
+      norm.setByte(encodeNormValue(1f));
     }
 
     @Override
@@ -138,9 +140,10 @@ public class TestSimilarityProvider exte
   }
   
   private class Sim2 extends TFIDFSimilarity {
+    
     @Override
-    public byte computeNorm(FieldInvertState state) {
-      return encodeNormValue(10f);
+    public void computeNorm(FieldInvertState state, Norm norm) {
+      norm.setByte(encodeNormValue(10f));
     }
 
     @Override

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSort.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSort.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSort.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestSort.java Wed Jan 18 22:28:07 2012
@@ -36,11 +36,9 @@ import org.apache.lucene.index.CorruptIn
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 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.MultiReader;
 import org.apache.lucene.index.RandomIndexWriter;
-import org.apache.lucene.index.SlowMultiReaderWrapper;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.index.DocValues;
 import org.apache.lucene.search.BooleanClause.Occur;
@@ -146,35 +144,31 @@ public class TestSort extends LuceneTest
         doc.add (new Field ("tracer", data[i][0], ft1));
         doc.add (new TextField ("contents", data[i][1]));
         if (data[i][2] != null) {
-          Field f = new StringField ("int", data[i][2]);
+          doc.add(new StringField ("int", data[i][2]));
           if (supportsDocValues) {
-            f = DocValuesField.build(f, DocValues.Type.VAR_INTS);
+            doc.add(new DocValuesField("int", Integer.parseInt(data[i][2]), DocValues.Type.VAR_INTS));
           }
-          doc.add(f);
         }
         if (data[i][3] != null) {
-          Field f = new StringField ("float", data[i][3]);
+          doc.add(new StringField ("float", data[i][3]));
           if (supportsDocValues) {
-            f = DocValuesField.build(f, DocValues.Type.FLOAT_32);
+            doc.add(new DocValuesField("float", Float.parseFloat(data[i][3]), DocValues.Type.FLOAT_32));
           }
-          doc.add(f);
         }
         if (data[i][4] != null) {
-          Field f = new StringField ("string", data[i][4]);
+          doc.add(new StringField ("string", data[i][4]));
           if (supportsDocValues) {
-            f = DocValuesField.build(f, stringDVType);
+            doc.add(new DocValuesField("string", new BytesRef(data[i][4]), stringDVType));
           }
-          doc.add(f);
         }
         if (data[i][5] != null) doc.add (new StringField ("custom",   data[i][5]));
         if (data[i][6] != null) doc.add (new StringField ("i18n",     data[i][6]));
         if (data[i][7] != null) doc.add (new StringField ("long",     data[i][7]));
         if (data[i][8] != null) {
-          Field f = new StringField ("double", data[i][8]);
+          doc.add(new StringField ("double", data[i][8]));
           if (supportsDocValues) {
-            f = DocValuesField.build(f, DocValues.Type.FLOAT_64);
+            doc.add(new DocValuesField("double", Double.parseDouble(data[i][8]), DocValues.Type.FLOAT_64));
           }
-          doc.add(f);
         }
         if (data[i][9] != null) doc.add (new StringField ("short",     data[i][9]));
         if (data[i][10] != null) doc.add (new StringField ("byte",     data[i][10]));
@@ -216,17 +210,15 @@ public class TestSort extends LuceneTest
       String num = getRandomCharString(getRandomNumber(2, 8), 48, 52);
       doc.add (new Field ("tracer", num, onlyStored));
       //doc.add (new Field ("contents", Integer.toString(i), Field.Store.NO, Field.Index.ANALYZED));
-      Field f = new StringField("string", num);
+      doc.add(new StringField("string", num));
       if (supportsDocValues) {
-        f = DocValuesField.build(f, DocValues.Type.BYTES_VAR_SORTED);
+        doc.add(new DocValuesField("string", new BytesRef(num), DocValues.Type.BYTES_VAR_SORTED));
       }
-      doc.add (f);
       String num2 = getRandomCharString(getRandomNumber(1, 4), 48, 50);
-      f = new StringField ("string2", num2);
+      doc.add(new StringField ("string2", num2));
       if (supportsDocValues) {
-        f = DocValuesField.build(f, DocValues.Type.BYTES_VAR_SORTED);
+        doc.add(new DocValuesField("string2", new BytesRef(num2), DocValues.Type.BYTES_VAR_SORTED));
       }
-      doc.add (f);
       doc.add (new Field ("tracer2", num2, onlyStored));
       for(IndexableField f2 : doc.getFields()) {
         ((Field) f2).setBoost(2.0f);
@@ -235,17 +227,15 @@ public class TestSort extends LuceneTest
       String numFixed = getRandomCharString(fixedLen, 48, 52);
       doc.add (new Field ("fixed_tracer", numFixed, onlyStored));
       //doc.add (new Field ("contents", Integer.toString(i), Field.Store.NO, Field.Index.ANALYZED));
-      f = new StringField("string_fixed", numFixed);
+      doc.add(new StringField("string_fixed", numFixed));
       if (supportsDocValues) {
-        f = DocValuesField.build(f, DocValues.Type.BYTES_FIXED_SORTED);
+        doc.add(new DocValuesField("string_fixed", new BytesRef(numFixed), DocValues.Type.BYTES_FIXED_SORTED));
       }
-      doc.add (f);
       String num2Fixed = getRandomCharString(fixedLen2, 48, 52);
-      f = new StringField ("string2_fixed", num2Fixed);
+      doc.add(new StringField ("string2_fixed", num2Fixed));
       if (supportsDocValues) {
-        f = DocValuesField.build(f, DocValues.Type.BYTES_FIXED_SORTED);
+        doc.add(new DocValuesField("string2_fixed", new BytesRef(num2Fixed), DocValues.Type.BYTES_FIXED_SORTED));
       }
-      doc.add (f);
       doc.add (new Field ("tracer2_fixed", num2Fixed, onlyStored));
 
       for(IndexableField f2 : doc.getFields()) {
@@ -387,7 +377,7 @@ public class TestSort extends LuceneTest
       sort.setSort (useDocValues(new SortField ("int", SortField.Type.INT)), SortField.FIELD_DOC );
       assertMatches (full, queryX, sort, "IGAEC");
       assertMatches (full, queryY, sort, "DHFJB");
-      
+
       sort.setSort (useDocValues(new SortField ("float", SortField.Type.FLOAT)), SortField.FIELD_DOC );
       assertMatches (full, queryX, sort, "GCIEA");
       assertMatches (full, queryY, sort, "DHJFB");

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTermVectors.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTermVectors.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTermVectors.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTermVectors.java Wed Jan 18 22:28:07 2012
@@ -23,7 +23,6 @@ import java.util.Map;
 
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.analysis.MockTokenizer;
-import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.FieldType;
@@ -135,19 +134,19 @@ public class TestTermVectors extends Luc
       assertNotNull(terms);
       TermsEnum termsEnum = terms.iterator(null);
       assertEquals("content", termsEnum.next().utf8ToString());
-      dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+      dpEnum = termsEnum.docsAndPositions(null, dpEnum, false);
       assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
       assertEquals(1, dpEnum.freq());
       assertEquals(expectedPositions[0], dpEnum.nextPosition());
 
       assertEquals("here", termsEnum.next().utf8ToString());
-      dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+      dpEnum = termsEnum.docsAndPositions(null, dpEnum, false);
       assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
       assertEquals(1, dpEnum.freq());
       assertEquals(expectedPositions[1], dpEnum.nextPosition());
 
       assertEquals("some", termsEnum.next().utf8ToString());
-      dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+      dpEnum = termsEnum.docsAndPositions(null, dpEnum, false);
       assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
       assertEquals(1, dpEnum.freq());
       assertEquals(expectedPositions[2], dpEnum.nextPosition());
@@ -171,31 +170,21 @@ public class TestTermVectors extends Luc
       
       TermsEnum termsEnum = vectors.terms("field").iterator(null);
       assertNotNull(termsEnum.next());
-      dpEnum = termsEnum.docsAndPositions(null, dpEnum);
-      OffsetAttribute offsetAtt = dpEnum == null ? null : dpEnum.attributes().getAttribute(OffsetAttribute.class);
 
       boolean shouldBePosVector = hits[i].doc % 2 == 0;
-      assertTrue(!shouldBePosVector
-                 || (shouldBePosVector && dpEnum != null));
-      
       boolean shouldBeOffVector = hits[i].doc % 3 == 0;
-      assertTrue(!shouldBeOffVector
-                 || (shouldBeOffVector && offsetAtt != null));
       
       if (shouldBePosVector || shouldBeOffVector) {
         while(true) {
-          dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+          dpEnum = termsEnum.docsAndPositions(null, dpEnum, shouldBeOffVector);
           assertNotNull(dpEnum);
-          offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
+          assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
+
+          dpEnum.nextPosition();
 
-          if (shouldBePosVector) {
-            assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
-          }
-          
           if (shouldBeOffVector) {
-            assertNotNull(offsetAtt);
-          } else {
-            assertNull(offsetAtt);
+            assertTrue(dpEnum.startOffset() != -1);
+            assertTrue(dpEnum.endOffset() != -1);
           }
 
           if (termsEnum.next() == null) {
@@ -437,7 +426,7 @@ public class TestTermVectors extends Luc
     assertNotNull(termsEnum.next());
     assertEquals("one", termsEnum.term().utf8ToString());
     assertEquals(5, termsEnum.totalTermFreq());
-    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null);
+    DocsAndPositionsEnum dpEnum = termsEnum.docsAndPositions(null, null, false);
     assertNotNull(dpEnum);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     assertEquals(5, dpEnum.freq());
@@ -445,16 +434,14 @@ public class TestTermVectors extends Luc
       assertEquals(i, dpEnum.nextPosition());
     }
 
-    dpEnum = termsEnum.docsAndPositions(null, dpEnum);
+    dpEnum = termsEnum.docsAndPositions(null, dpEnum, true);
     assertNotNull(dpEnum);
-    OffsetAttribute offsetAtt = dpEnum.attributes().getAttribute(OffsetAttribute.class);
-    assertNotNull(offsetAtt);
     assertTrue(dpEnum.nextDoc() != DocsEnum.NO_MORE_DOCS);
     assertEquals(5, dpEnum.freq());
     for(int i=0;i<5;i++) {
       dpEnum.nextPosition();
-      assertEquals(4*i, offsetAtt.startOffset());
-      assertEquals(4*i+3, offsetAtt.endOffset());
+      assertEquals(4*i, dpEnum.startOffset());
+      assertEquals(4*i+3, dpEnum.endOffset());
     }
     reader.close();
   }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java Wed Jan 18 22:28:07 2012
@@ -93,7 +93,7 @@ public class TestTopDocsMerge extends Lu
         final Document doc = new Document();
         doc.add(newField("string", _TestUtil.randomRealisticUnicodeString(random), StringField.TYPE_UNSTORED));
         doc.add(newField("text", content[random.nextInt(content.length)], TextField.TYPE_UNSTORED));
-        doc.add(new NumericField("float").setFloatValue(random.nextFloat()));
+        doc.add(new NumericField("float", random.nextFloat()));
         final int intValue;
         if (random.nextInt(100) == 17) {
           intValue = Integer.MIN_VALUE;
@@ -102,7 +102,7 @@ public class TestTopDocsMerge extends Lu
         } else {
           intValue = random.nextInt();
         }
-        doc.add(new NumericField("int").setIntValue(intValue));
+        doc.add(new NumericField("int", intValue));
         if (VERBOSE) {
           System.out.println("  doc=" + doc);
         }

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java Wed Jan 18 22:28:07 2012
@@ -24,6 +24,7 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
@@ -330,8 +331,8 @@ public class TestPayloadNearQuery extend
         //Make everything else 1 so we see the effect of the payload
         //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
         @Override 
-        public byte computeNorm(FieldInvertState state) {
-          return encodeNormValue(state.getBoost());
+        public void computeNorm(FieldInvertState state, Norm norm) {
+          norm.setByte(encodeNormValue(state.getBoost()));
         }
 
         @Override 

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java Wed Jan 18 22:28:07 2012
@@ -37,6 +37,7 @@ import org.apache.lucene.search.spans.Sp
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.Norm;
 import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
@@ -324,9 +325,9 @@ public class TestPayloadTermQuery extend
         //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
         //Make everything else 1 so we see the effect of the payload
         //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-        @Override
-        public byte computeNorm(FieldInvertState state) {
-          return encodeNormValue(state.getBoost());
+        @Override 
+        public void computeNorm(FieldInvertState state, Norm norm) {
+          norm.setByte(encodeNormValue(state.getBoost()));
         }
 
         @Override

Modified: lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/util/TestByteBlockPool.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/util/TestByteBlockPool.java?rev=1233096&r1=1233095&r2=1233096&view=diff
==============================================================================
--- lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/util/TestByteBlockPool.java (original)
+++ lucene/dev/branches/solrcloud/lucene/src/test/org/apache/lucene/util/TestByteBlockPool.java Wed Jan 18 22:28:07 2012
@@ -1,5 +1,6 @@
 package org.apache.lucene.util;
 
+import java.io.EOFException;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -59,7 +60,7 @@ public class TestByteBlockPool extends L
     try {
       input.readByte();
       fail("must be EOF");
-    } catch (IOException e) {
+    } catch (EOFException e) {
       // expected - read past EOF
     }
     dir.close();