Way to control search time, hits, and memory usage
--------------------------------------------------

                 Key: SOLR-392
                 URL: https://issues.apache.org/jira/browse/SOLR-392
             Project: Solr
          Issue Type: New Feature
          Components: search
    Affects Versions: 1.3
            Reporter: Lance Norskog
            Priority: Minor


It would be good for end-user applications if Solr allowed searches to time 
out. It is possible now for the servlet container to throw a timeout exception. 
It would be very useful if the Solr search request timeout offered these 
features:

1) timeout: stop searching after N milliseconds and return results using only 
those hits already found
2) hit limit: stop searching after N milliseconds and return results using only 
those hits already found
3) ram limit: estimate the amount of ram used so far and stop searching at a 
given amount

In all cases it would be very useful to estimate the remaining results to any 
degree of accuracy.

Argument for estimation:
For an extreme example, Google clearly does not finish any search that is more 
than the requested return value. Instead it returns very quickly on any search 
and overestimates all searches. If the first page says there are five pages, 
the second will often say that there are four pages instead. The third page 
will say "3 out of 3". 

Argument for 'timeout' control: we've all waited too long for searches

Argument for 'hit limit' control:
I really don't need to know that I'll have 14 thousand results. I'm not going 
to view them all.

Argument for 'ram limit' control:
Over-complex queries can cause Java OutOfMemory errors, and Tomcat does not 
recover gracefully.



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to