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

Joel Bernstein commented on SOLR-6066:
--------------------------------------

Also, some things to thing about with your application.

Solr provides a consistent view of the index for each query. So softCommits in 
the backround should not effect the execution of your query. 

Soft commits do open a new searcher though, and the CollapsingQParserPlugin 
relies on the Lucene FieldCache, which needs to be warmed when a new searcher 
is opened.

So adding a static warming query that exercises the CollapsingQParserPlugin 
will ensure that users will not see pauses after softCommits.

If you are softCommitting too frequently this can lead to overlapping searchers 
as they take time to open and warm. So be sure to space the softCommits far 
enough apart that you are not opening new searchers faster then they can be 
warmed.

When you post you're stack trace, it should tell us what's happening though. 

> 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, SOLR-6066.patch, 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.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to