You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ab...@apache.org on 2018/12/19 10:00:11 UTC

lucene-solr:jira/solr-12259: Temporary changes to illustrate the problem even when FieldCache is preferred over existing doc values.

Repository: lucene-solr
Updated Branches:
  refs/heads/jira/solr-12259 cf6054394 -> a350ba71f


Temporary changes to illustrate the problem even when FieldCache is preferred over existing doc values.


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a350ba71
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a350ba71
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a350ba71

Branch: refs/heads/jira/solr-12259
Commit: a350ba71f9c5607d443e504ebc9649f888177a2e
Parents: cf60543
Author: Andrzej Bialecki <ab...@apache.org>
Authored: Wed Dec 19 10:59:33 2018 +0100
Committer: Andrzej Bialecki <ab...@apache.org>
Committed: Wed Dec 19 10:59:33 2018 +0100

----------------------------------------------------------------------
 .../solr/uninverting/UninvertingReader.java     | 26 ++++----------------
 1 file changed, 5 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a350ba71/solr/core/src/java/org/apache/solr/uninverting/UninvertingReader.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/uninverting/UninvertingReader.java b/solr/core/src/java/org/apache/solr/uninverting/UninvertingReader.java
index 5b07e61..f60214a 100644
--- a/solr/core/src/java/org/apache/solr/uninverting/UninvertingReader.java
+++ b/solr/core/src/java/org/apache/solr/uninverting/UninvertingReader.java
@@ -243,7 +243,7 @@ public class UninvertingReader extends FilterLeafReader {
     ArrayList<FieldInfo> newFieldInfos = new ArrayList<>(in.getFieldInfos().size());
     for (FieldInfo fi : in.getFieldInfos()) {
       DocValuesType type = shouldWrap(fi, mapping);
-      if (type != fi.getDocValuesType()) { // we changed it
+      if (type != null) { // always wrap if the mapping says to, potentially discarding existing DVs
         wrap = true;
         newFieldInfos.add(new FieldInfo(fi.name, fi.number, fi.hasVectors(), fi.omitsNorms(),
             fi.hasPayloads(), fi.getIndexOptions(), type, fi.getDocValuesGen(), fi.attributes(),
@@ -326,10 +326,6 @@ public class UninvertingReader extends FilterLeafReader {
 
   @Override
   public NumericDocValues getNumericDocValues(String field) throws IOException {
-    NumericDocValues values = super.getNumericDocValues(field);
-    if (values != null) {
-      return values;
-    }
     Type v = getType(field);
     if (v != null) {
       switch (v) {
@@ -351,43 +347,31 @@ public class UninvertingReader extends FilterLeafReader {
           break;
       }
     }
-    return null;
+    return super.getNumericDocValues(field);
   }
 
   @Override
   public BinaryDocValues getBinaryDocValues(String field) throws IOException {
-    BinaryDocValues values = in.getBinaryDocValues(field);
-    if (values != null) {
-      return values;
-    }
     Type v = getType(field);
     if (v == Type.BINARY) {
       return FieldCache.DEFAULT.getTerms(in, field);
     } else {
-      return null;
+      return in.getBinaryDocValues(field);
     }
   }
 
   @Override
   public SortedDocValues getSortedDocValues(String field) throws IOException {
-    SortedDocValues values = in.getSortedDocValues(field);
-    if (values != null) {
-      return values;
-    }
     Type v = getType(field);
     if (v == Type.SORTED) {
       return FieldCache.DEFAULT.getTermsIndex(in, field);
     } else {
-      return null;
+      return in.getSortedDocValues(field);
     }
   }
   
   @Override
   public SortedSetDocValues getSortedSetDocValues(String field) throws IOException {
-    SortedSetDocValues values = in.getSortedSetDocValues(field);
-    if (values != null) {
-      return values;
-    }
     Type v = getType(field);
     if (v != null) {
       switch (v) {
@@ -412,7 +396,7 @@ public class UninvertingReader extends FilterLeafReader {
           break;
       }
     }
-    return null;
+    return in.getSortedSetDocValues(field);
   }
 
   /**