From reading the code I don't think it is possible. If your timeout is 
occurring in the core search the SolrIndexSearcher will throw a certain type of 
ExitingReaderException that is caught very high up (in the SearchHandler). This 
happens as the SearchHandler is looping through "SearchComponents" one of which 
is the HighlightComponent. Effectively this means the search processing is 
short-circuited as no downstream components get invoked. Not sure if changing 
this behavior is the right thing since highlighting itself can be expensive so 
the timeout would be misleading. I suppose you could consider implementing more 
granular timeouts but not sure about the return on investment of something like 
that.

Sent from Bloomberg Professional for Android

----- Original Message -----
From: Mingchun Zhao <users@solr.apache.org>
To: users@solr.apache.org
At: 11/13/24 20:38:49 UTC-05:00


Hi Luke,

Thank you very much for the valuable information. I’ll give the Unified
Highlighter’s Postings feature a try.

That said, I’d still like to know more about the behavior of the
"timeAllowed" parameter, especially whether it’s possible to retrieve
partial search results (both matching documents and highlighted snippets)
when a query times out.

If you have any information on this, I’d appreciate it.

Regards,
Zhao

2024年11月13日(水) 21:50 Luke Kot-Zaniewski (BLOOMBERG/ 919 3RD A) <
lkotzanie...@bloomberg.net>:

> Just throwing this out there, have you tried the unifiedHighlighter with
> termVectors/character offsets? The default configuration re-analyzes the
> text of the result-set which can be cpu-bound for large docs/fields. But
> there are ways to get around this by storing the character offsets and
> termVectors in the index, which can be a good tradeoff in many situations,
> i.e. "Postings"
>
> https://solr.apache.org/guide/solr/latest/query-guide/highlighting.html#:~:text=over%20highlighting%20performance.-,Postings,-%3A%20Supported%20by%20the
>
> I know this doesn't answer your question but just wanted to mention an
> alternative solution to relying on time-outs/partial-results, which may be
> frustrating for other reasons.
> Sent from Bloomberg Professional for Android
>
> ----- Original Message -----
> From: Mingchun Zhao <users@solr.apache.org>
> To: users@solr.apache.org
> At: 11/12/24 21:55:36 UTC-05:00
>
>
> Hi,
>
> If a query is interrupted due to timeAllowed, does it still return the
> partially matched documents and highlight snippets on it? Or does the
> behavior vary depending on the Solr version?
> In my testing, when the response header includes "partialResults=true", the
> partial search results or snippets were not included in the response body.
>
> Regards,
> Zhao
>

Reply via email to