Details
-
Bug
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
4.7.2
-
None
Description
I am having a problem with degraded performance when using the collapseQParserPlugin with facet tagging.
An example query would look something like this
http://host:port/solr/index/handler?facet=true&fq={!collapse field=groupid}&facet.query={!ex=Width_numeric}Width_numeric:[10+TO+15]&facet.query={!ex=Width_numeric}Width_numeric:[15+TO+20]&facet.sort=index&start=0&q=36+x+42+shower+base&fq={!tag%3DWidth_numeric}Width_numeric:[35+TO+40]
When I either remove the grouping
fq={!collapse field=groupid}
or remove the tag
&fq={!tag%3DWidth_numeric}Width_numeric:[35+TO+40]
I am getting requests orders of magnitude faster. In my production environment with around 800k documents. I jump from less than 20ms to over 100ms sometimes 200ms using the collapsingQParserPlugin with tagging.
The issue can be observed in the TestCollapseQParserPlugin tests:
params.add("q", "*:*"); params.add("fq", "{!collapse field=group_s}"); params.add("defType", "edismax"); params.add("bf", "field(test_ti)"); params.add("facet", "true"); params.add("facet.field", "{!ex=test_ti}test_ti"); params.add("fq", "{!tag=test_ti}test_ti:10"); assertQ(req(params), "*[count(//doc)=3]", "//result/doc[1]/float[@name='id'][.='2.0']", "//result/doc[2]/float[@name='id'][.='6.0']" );
With this test with the tagging I ran 10 tests and consistently got response times between 23-28ms. When I removed the tag and ran 10 more tests I consistently got results between 15-18ms
In all cases if I don't use the collapseQParserPlugin with tagging by either removing the tag or leaving the tag but removing the collapse I am getting poor performance.