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 2013/07/25 15:43:11 UTC
svn commit: r1506968 - in /lucene/dev/branches/branch_4x: ./ lucene/
lucene/core/ lucene/core/src/java/org/apache/lucene/index/CheckIndex.java
Author: rmuir
Date: Thu Jul 25 13:43:10 2013
New Revision: 1506968
URL: http://svn.apache.org/r1506968
Log:
LUCENE-5131: CheckIndex is confusing for docvalues fields
Modified:
lucene/dev/branches/branch_4x/ (props changed)
lucene/dev/branches/branch_4x/lucene/ (props changed)
lucene/dev/branches/branch_4x/lucene/core/ (props changed)
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java?rev=1506968&r1=1506967&r2=1506968&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/CheckIndex.java Thu Jul 25 13:43:10 2013
@@ -34,6 +34,7 @@ import org.apache.lucene.codecs.Postings
import org.apache.lucene.codecs.lucene3x.Lucene3xSegmentInfoFormat;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.FieldType; // for javadocs
+import org.apache.lucene.index.CheckIndex.Status.DocValuesStatus;
import org.apache.lucene.index.FieldInfo.IndexOptions;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.store.Directory;
@@ -299,10 +300,21 @@ public class CheckIndex {
DocValuesStatus() {
}
- /** Number of documents tested. */
- public int docCount;
/** Total number of docValues tested. */
public long totalValueFields;
+
+ /** Total number of numeric fields */
+ public long totalNumericFields;
+
+ /** Total number of binary fields */
+ public long totalBinaryFields;
+
+ /** Total number of sorted fields */
+ public long totalSortedFields;
+
+ /** Total number of sortedset fields */
+ public long totalSortedSetFields;
+
/** Exception thrown during doc values test (null on success) */
public Throwable error = null;
}
@@ -1288,7 +1300,7 @@ public class CheckIndex {
for (FieldInfo fieldInfo : reader.getFieldInfos()) {
if (fieldInfo.hasDocValues()) {
status.totalValueFields++;
- checkDocValues(fieldInfo, reader, infoStream);
+ checkDocValues(fieldInfo, reader, infoStream, status);
} else {
if (reader.getBinaryDocValues(fieldInfo.name) != null ||
reader.getNumericDocValues(fieldInfo.name) != null ||
@@ -1299,7 +1311,11 @@ public class CheckIndex {
}
}
- msg(infoStream, "OK [" + status.docCount + " total doc count; " + status.totalValueFields + " docvalues fields]");
+ msg(infoStream, "OK [" + status.totalValueFields + " docvalues fields; "
+ + status.totalBinaryFields + " BINARY; "
+ + status.totalNumericFields + " NUMERIC; "
+ + status.totalSortedFields + " SORTED; "
+ + status.totalSortedSetFields + " SORTED_SET]");
} catch (Throwable e) {
msg(infoStream, "ERROR [" + String.valueOf(e.getMessage()) + "]");
status.error = e;
@@ -1398,9 +1414,10 @@ public class CheckIndex {
}
}
- private static void checkDocValues(FieldInfo fi, AtomicReader reader, PrintStream infoStream) throws Exception {
+ private static void checkDocValues(FieldInfo fi, AtomicReader reader, PrintStream infoStream, DocValuesStatus status) throws Exception {
switch(fi.getDocValuesType()) {
case SORTED:
+ status.totalSortedFields++;
checkSortedDocValues(fi.name, reader, reader.getSortedDocValues(fi.name));
if (reader.getBinaryDocValues(fi.name) != null ||
reader.getNumericDocValues(fi.name) != null ||
@@ -1409,6 +1426,7 @@ public class CheckIndex {
}
break;
case SORTED_SET:
+ status.totalSortedSetFields++;
checkSortedSetDocValues(fi.name, reader, reader.getSortedSetDocValues(fi.name));
if (reader.getBinaryDocValues(fi.name) != null ||
reader.getNumericDocValues(fi.name) != null ||
@@ -1417,6 +1435,7 @@ public class CheckIndex {
}
break;
case BINARY:
+ status.totalBinaryFields++;
checkBinaryDocValues(fi.name, reader, reader.getBinaryDocValues(fi.name));
if (reader.getNumericDocValues(fi.name) != null ||
reader.getSortedDocValues(fi.name) != null ||
@@ -1425,6 +1444,7 @@ public class CheckIndex {
}
break;
case NUMERIC:
+ status.totalNumericFields++;
checkNumericDocValues(fi.name, reader, reader.getNumericDocValues(fi.name));
if (reader.getBinaryDocValues(fi.name) != null ||
reader.getSortedDocValues(fi.name) != null ||