[ 
https://issues.apache.org/jira/browse/SOLR-17131?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated SOLR-17131:
----------------------------------
    Labels: pull-request-available  (was: )

> Optimize rows=0 queries since score/sort isn't necessary
> --------------------------------------------------------
>
>                 Key: SOLR-17131
>                 URL: https://issues.apache.org/jira/browse/SOLR-17131
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Kevin Risden
>            Assignee: Kevin Risden
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 6.5h
>  Remaining Estimate: 0h
>
> If a query has rows=0 Solr does not need to sort the results or even compute 
> the score. This means the filterCache can be more efficient to compute the 
> result and Solr doesn't spend time on unnecessarily sorting and scoring large 
> result sets for it to be thrown away.
> There is one subtle difference from this change - `maxScore` is no longer 
> returned if `rows=0` which seems like a reasonable tradeoff. If `maxScore` is 
> needed then set `rows=1`. `maxScore` can't reliably be compared across 
> searches anyway so no reason to have it when `rows=0`.
> This was found while looking at 
> https://issues.apache.org/jira/browse/SOLR-14765 and trying to reason through 
> the case of rows=0 that are sometimes used to just determine count of 
> matching results. This change adds the check for rows=0 before other checks 
> to ensure that we can short circuit scoring even if there is a scoring query. 
> We also don't add the query to the filter cache since that could result in 
> filter cache thrashing.
> In some tests, we found that queries with rows=0 p99 improved by 50% and CPU 
> dropped by 5%.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to