You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ko...@apache.org on 2013/01/22 12:59:20 UTC

svn commit: r1436854 - in /lucene/dev/branches/lucene_solr_3_6: ./ lucene/ lucene/contrib/facet/ lucene/contrib/spellchecker/ lucene/core/src/ lucene/core/src/test/org/apache/lucene/analysis/ lucene/site/ lucene/test-framework/src/java/org/apache/lucen...

Author: koji
Date: Tue Jan 22 11:59:19 2013
New Revision: 1436854

URL: http://svn.apache.org/viewvc?rev=1436854&view=rev
Log:
SOLR-4330: group.sort is ignored when using group.truncate and ex/tag local params together

Modified:
    lucene/dev/branches/lucene_solr_3_6/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/contrib/facet/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/contrib/spellchecker/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/core/src/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/core/src/test/org/apache/lucene/analysis/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/site/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/test-framework/src/java/org/apache/lucene/analysis/ValidatingTokenFilter.java   (props changed)
    lucene/dev/branches/lucene_solr_3_6/lucene/tools/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/NOTICE.txt   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/common-build.xml   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/contrib/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/core/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/core/src/java/org/apache/solr/request/SimpleFacets.java
    lucene/dev/branches/lucene_solr_3_6/solr/core/src/test/org/apache/solr/TestGroupingSearch.java
    lucene/dev/branches/lucene_solr_3_6/solr/example/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/lib/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/solrj/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/test-framework/   (props changed)
    lucene/dev/branches/lucene_solr_3_6/solr/testlogging.properties   (props changed)

Modified: lucene/dev/branches/lucene_solr_3_6/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_3_6/solr/CHANGES.txt?rev=1436854&r1=1436853&r2=1436854&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_3_6/solr/CHANGES.txt (original)
+++ lucene/dev/branches/lucene_solr_3_6/solr/CHANGES.txt Tue Jan 22 11:59:19 2013
@@ -22,7 +22,10 @@ on how to get started.
 
 ==================  3.6.3  ==================
 
-(No Changes)
+Bug Fixes
+----------------------
+* SOLR-4330: group.sort is ignored when using group.truncate and ex/tag
+  local params together (koji)
 
 ==================  3.6.2  ==================
 

Modified: lucene/dev/branches/lucene_solr_3_6/solr/core/src/java/org/apache/solr/request/SimpleFacets.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_3_6/solr/core/src/java/org/apache/solr/request/SimpleFacets.java?rev=1436854&r1=1436853&r2=1436854&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_3_6/solr/core/src/java/org/apache/solr/request/SimpleFacets.java (original)
+++ lucene/dev/branches/lucene_solr_3_6/solr/core/src/java/org/apache/solr/request/SimpleFacets.java Tue Jan 22 11:59:19 2013
@@ -152,6 +152,7 @@ public class SimpleFacets {
       DocSet base = searcher.getDocSet(qlist);
       if (rb.grouping() && rb.getGroupingSpec().isTruncateGroups()) {
         Grouping grouping = new Grouping(searcher, null, rb.getQueryCommand(), false, 0, false);
+        grouping.setGroupSort(rb.getGroupingSpec().getSortWithinGroup());
         if (rb.getGroupingSpec().getFields().length > 0) {
           grouping.addFieldCommand(rb.getGroupingSpec().getFields()[0], req);
         } else {

Modified: lucene/dev/branches/lucene_solr_3_6/solr/core/src/test/org/apache/solr/TestGroupingSearch.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_3_6/solr/core/src/test/org/apache/solr/TestGroupingSearch.java?rev=1436854&r1=1436853&r2=1436854&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_3_6/solr/core/src/test/org/apache/solr/TestGroupingSearch.java (original)
+++ lucene/dev/branches/lucene_solr_3_6/solr/core/src/test/org/apache/solr/TestGroupingSearch.java Tue Jan 22 11:59:19 2013
@@ -369,6 +369,29 @@ public class TestGroupingSearch extends 
     );
   }
 
+  @Test
+  public void testGroupingGroupedBasedFacetingWithTaggedFilter() throws Exception {
+    assertU(add(doc("id", "1", "cat_sI", "a", "bday", "2012-11-20T00:00:00Z")));
+    assertU(add(doc("id", "2", "cat_sI", "b", "bday", "2012-11-21T00:00:00Z")));
+    assertU(add(doc("id", "3", "cat_sI", "a", "bday", "2012-11-20T00:00:00Z")));
+    assertU(add(doc("id", "4", "cat_sI", "b", "bday", "2013-01-15T00:00:00Z")));
+    assertU(add(doc("id", "5", "cat_sI", "a", "bday", "2013-01-14T00:00:00Z")));
+    assertU(commit());
+
+    // Facet counts based on groups
+    SolrQueryRequest req = req("q", "*:*", "rows", "1", "group", "true", "group.field", "cat_sI",
+        "sort", "cat_sI asc", "fl", "id", "fq", "{!tag=chk}bday:[2012-12-18T00:00:00Z TO 2013-01-17T23:59:59Z]",
+        "facet", "true", "group.truncate", "true", "group.sort", "bday desc",
+        "facet.query", "{!ex=chk key=LW1}bday:[2013-01-11T00:00:00Z TO 2013-01-17T23:59:59Z]",
+        "facet.query", "{!ex=chk key=LM1}bday:[2012-12-18T00:00:00Z TO 2013-01-17T23:59:59Z]",
+        "facet.query", "{!ex=chk key=LM3}bday:[2012-10-18T00:00:00Z TO 2013-01-17T23:59:59Z]");
+    assertJQ(
+        req,
+        "/grouped=={'cat_sI':{'matches':2,'groups':[{'groupValue':'a','doclist':{'numFound':1,'start':0,'docs':[{'id':'5'}]}}]}}",
+        "/facet_counts=={'facet_queries':{'LW1':2,'LM1':2,'LM3':2},'facet_fields':{},'facet_dates':{},'facet_ranges':{}}"
+    );
+  }
+
   static String f = "foo_s1";
   static String f2 = "foo2_i";