You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/03/11 16:18:29 UTC

svn commit: r1299375 - in /lucene/dev/trunk/lucene/core/src/java/org/apache/lucene: codecs/lucene3x/Lucene3xFieldInfosReader.java index/CheckIndex.java

Author: rmuir
Date: Sun Mar 11 15:18:29 2012
New Revision: 1299375

URL: http://svn.apache.org/viewvc?rev=1299375&view=rev
Log:
LUCENE-3860: 3.x indexes have the wrong normType set in fieldinfos

Modified:
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene3x/Lucene3xFieldInfosReader.java
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene3x/Lucene3xFieldInfosReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene3x/Lucene3xFieldInfosReader.java?rev=1299375&r1=1299374&r2=1299375&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene3x/Lucene3xFieldInfosReader.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene3x/Lucene3xFieldInfosReader.java Sun Mar 11 15:18:29 2012
@@ -107,7 +107,7 @@ class Lucene3xFieldInfosReader extends F
         hasProx |= isIndexed && indexOptions == IndexOptions.DOCS_AND_FREQS_AND_POSITIONS;
         hasFreq |= isIndexed && indexOptions != IndexOptions.DOCS_ONLY;
         infos[i] = new FieldInfo(name, isIndexed, fieldNumber, storeTermVector, 
-          omitNorms, storePayloads, indexOptions, null, isIndexed && !omitNorms? Type.BYTES_VAR_STRAIGHT : null);
+          omitNorms, storePayloads, indexOptions, null, isIndexed && !omitNorms? Type.FIXED_INTS_8 : null);
       }
 
       if (input.getFilePointer() != input.length()) {

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java?rev=1299375&r1=1299374&r2=1299375&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java Sun Mar 11 15:18:29 2012
@@ -652,10 +652,16 @@ public class CheckIndex {
         infoStream.print("    test: field norms.........");
       }
       DocValues dv;
+      // todo: factor out a shared checkValues(DocValues, Type (from fieldinfos), ...) and share this method
+      // between this and testDocValues
       for (FieldInfo info : fieldInfos) {
         if (reader.hasNorms(info.name)) {
           dv = reader.normValues(info.name);
           assert dv != null;
+          DocValues.Type type = dv.type();
+          if (type != info.getNormType()) {
+            throw new RuntimeException("field: " + info.name + " has type: " + type + " but fieldInfos says:" + info.getNormType());
+          }
           if (dv.getSource().hasArray()) {
             Object array = dv.getSource().getArray();
             if (Array.getLength(array) != reader.maxDoc()) {