You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by yo...@apache.org on 2017/05/23 02:52:46 UTC

lucene-solr:branch_6x: SOLR-10723: fix resize for CountSlotAcc, HllAgg.NumericAcc

Repository: lucene-solr
Updated Branches:
  refs/heads/branch_6x c74f4a0ae -> eef1162f4


SOLR-10723: fix resize for CountSlotAcc, HllAgg.NumericAcc


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

Branch: refs/heads/branch_6x
Commit: eef1162f43eb05975ed0b552eeec867f30de4f60
Parents: c74f4a0
Author: yonik <yo...@apache.org>
Authored: Mon May 22 22:39:33 2017 -0400
Committer: yonik <yo...@apache.org>
Committed: Mon May 22 22:39:58 2017 -0400

----------------------------------------------------------------------
 solr/CHANGES.txt                                               | 6 ++++++
 solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java    | 2 +-
 solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java   | 2 +-
 .../src/test/org/apache/solr/search/facet/TestJsonFacets.java  | 4 +++-
 4 files changed, 11 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eef1162f/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 65d9ce8..8f3aa61 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -37,6 +37,12 @@ New Features
 
 * SOLR-10307: Allow Passing SSL passwords through environment variables. (Mano Kovacs via Mark Miller)
 
+Bug Fixes
+----------------------
+* SOLR-10723 JSON Facet API: resize() implemented incorrectly for CountSlotAcc, HllAgg.NumericAcc
+  resulting in exceptions when using a hashing faceting method and sorting by hll(numeric_field).
+  (yonik)
+
 Other Changes
 ----------------------
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eef1162f/solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java b/solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java
index adb9e8c..edc5b19 100644
--- a/solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java
+++ b/solr/core/src/java/org/apache/solr/search/facet/HLLAgg.java
@@ -134,7 +134,7 @@ public class HLLAgg extends StrAggValueSource {
 
     @Override
     public void resize(Resizer resizer) {
-      resizer.resize(sets, null);
+      sets = resizer.resize(sets, null);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eef1162f/solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java b/solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java
index 168ca8d..939ea17 100644
--- a/solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java
+++ b/solr/core/src/java/org/apache/solr/search/facet/SlotAcc.java
@@ -551,7 +551,7 @@ class CountSlotArrAcc extends CountSlotAcc {
 
   @Override
   public void resize(Resizer resizer) {
-    resizer.resize(result, 0);
+    result = resizer.resize(result, 0);
   }
 }
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eef1162f/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java b/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
index 4ca435c..50020cc 100644
--- a/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
+++ b/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
@@ -634,7 +634,8 @@ public class TestJsonFacets extends SolrTestCaseHS {
                 " , f3:{${terms} type:terms, field:'${cat_s}', sort:'x desc', facet:{x:'unique(${where_s})'}  } " +
                 " , f4:{${terms} type:terms, field:'${cat_s}', sort:'x desc', facet:{x:'hll(${where_s})'}  } " +
                 " , f5:{${terms} type:terms, field:'${cat_s}', sort:'x desc', facet:{x:'variance(${num_d})'}  } " +
-                "}"
+                " , f6:{type:terms, field:${num_d}, limit:1, sort:'x desc', facet:{x:'hll(${num_i})'}  } " +  // facet on a field that will cause hashing and exercise hll.resize on numeric field
+            "}"
         )
         , "facets=={ 'count':6, " +
             "  f1:{  'buckets':[{ val:'A', count:2, x:2.0 },  { val:'B', count:3, x:-9.0}]}" +
@@ -642,6 +643,7 @@ public class TestJsonFacets extends SolrTestCaseHS {
             ", f3:{  'buckets':[{ val:'A', count:2, x:2 },    { val:'B', count:3, x:2 }]} " +
             ", f4:{  'buckets':[{ val:'A', count:2, x:2 },    { val:'B', count:3, x:2 }]} " +
             ", f5:{  'buckets':[{ val:'B', count:3, x:74.6666666666666 },    { val:'A', count:2, x:1.0 }]} " +
+            ", f6:{  buckets:[{ val:-9.0, count:1, x:1 }]} " +
             "}"
     );