[ 
https://issues.apache.org/jira/browse/SOLR-6066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14083269#comment-14083269
 ] 

David Boychuck edited comment on SOLR-6066 at 8/2/14 3:19 AM:
--------------------------------------------------------------

I uploaded a patch. The change is basically to store the docId's in shared 
memory as they are collected and then perform the logic to append elvated doc 
to their correct positions (if the documents have been collected) in the finish 
method. This seems to be working for me for now until Joel refactors.


was (Author: dboychuck):
I uploaded a patch. The change is basically to move store the docId's in shared 
memory as they are collected and then perform the logic to append them to their 
correct positions in the finish method. This seems to be working for me for now 
until Joel refactors.

> CollapsingQParserPlugin + Elevation does not respects "fq" (filter query) 
> --------------------------------------------------------------------------
>
>                 Key: SOLR-6066
>                 URL: https://issues.apache.org/jira/browse/SOLR-6066
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers
>    Affects Versions: 4.8
>            Reporter: Herb Jiang
>            Assignee: Joel Bernstein
>             Fix For: 4.9
>
>         Attachments: SOLR-6066.patch, TestCollapseQParserPlugin.java
>
>
> QueryElevationComponent respects the "fq" parameter. But when use 
> CollapsingQParserPlugin with QueryElevationComponent, additional "fq" has no 
> effect.
> I use following test case to show this issue. (It will failed)
> {code:java}
>     String[] doc = {"id","1", "term_s", "YYYY", "group_s", "group1", 
> "category_s", "cat2", "test_ti", "5", "test_tl", "10", "test_tf", "2000"};
>     assertU(adoc(doc));
>     assertU(commit());
>     String[] doc1 = {"id","2", "term_s","YYYY", "group_s", "group1", 
> "category_s", "cat2", "test_ti", "50", "test_tl", "100", "test_tf", "200"};
>     assertU(adoc(doc1));
>     String[] doc2 = {"id","3", "term_s", "YYYY", "test_ti", "5000", 
> "test_tl", "100", "test_tf", "200"};
>     assertU(adoc(doc2));
>     assertU(commit());
>     String[] doc3 = {"id","4", "term_s", "YYYY", "test_ti", "500", "test_tl", 
> "1000", "test_tf", "2000"};
>     assertU(adoc(doc3));
>     String[] doc4 = {"id","5", "term_s", "YYYY", "group_s", "group2", 
> "category_s", "cat1", "test_ti", "4", "test_tl", "10", "test_tf", "2000"};
>     assertU(adoc(doc4));
>     assertU(commit());
>     String[] doc5 = {"id","6", "term_s","YYYY", "group_s", "group2", 
> "category_s", "cat1", "test_ti", "10", "test_tl", "100", "test_tf", "200"};
>     assertU(adoc(doc5));
>     assertU(commit());
>     //Test additional filter query when using collapse
>     params = new ModifiableSolrParams();
>     params.add("q", "YYYY");
>     params.add("fq", "{!collapse field=group_s}");
>     params.add("fq", "category_s:cat1");
>     params.add("defType", "edismax");
>     params.add("bf", "field(test_ti)");
>     params.add("qf", "term_s");
>     params.add("qt", "/elevate");
>     params.add("elevateIds", "2");
>     assertQ(req(params), "*[count(//doc)=1]",
>         "//result/doc[1]/float[@name='id'][.='6.0']");
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to