Hi, we are running Solr 3.6.1 and see an issue in our load tests. Some of the queries our load test script produces result in huge number of hits. It may go as high as 90% of all documents we have (2.5M). Those are all range queries. I see in the log that those queries take much more time to execute.

Since such a query does not make any sense from the end user perspective, I would like to limit its performance impact.

Is it possible to abort the query after certain number of document hits or certain time elapsed and return a error? I would render that error as "Please refine your search" message to the end user in my application. I know that many sites on the web do that, and I guess most of them do that with Solr.

I tried setting timeAllowed limit, but, for some reason, I did not see those query times to go down. I suspect that most of the time is spent not in Search phase (which is the only one respecting timeAllowed, as far as I know), but in the sorting phase. And still, I want to abort any longer running query. Otherwise they accumulate over time, pushing server's load average sky high and killing performance even for regular queries.

-- Aleksey

Reply via email to