[
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]