[ 
https://issues.apache.org/jira/browse/SOLR-17053?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17893181#comment-17893181
 ] 

David Smiley commented on SOLR-17053:
-------------------------------------

I think I see a concerning bug here [~aparnasuresh].  The logic is placed in 
the loop that receives each response of an outgoing request.  At this spot it 
looks to see if all responses have failed.  But if the very first response 
failed, it will think "all responses have failed" because it hasn't even seen 
the ones that have yet to respond!  The logic should be placed lower out of the 
loop of receiving individual responses.  There was no negative test -- that we 
don't fail the request if only the first sub-shard request failed.

> Distributed search: if all shards fail, fail the request despite 
> shards.tolerant
> --------------------------------------------------------------------------------
>
>                 Key: SOLR-17053
>                 URL: https://issues.apache.org/jira/browse/SOLR-17053
>             Project: Solr
>          Issue Type: Improvement
>          Components: search
>    Affects Versions: 8.6
>            Reporter: Aparna Suresh
>            Priority: Minor
>             Fix For: 9.5
>
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> If the request is tolerant to errors, logic in SearchHandler simply sets 
> partialResults to true upon detecting an error in ShardResponse. This means a 
> failure to query any shard would be reported back as partialResults=true, 
> instead of a query failure.
> Why: Improve the error handling and reporting in the search system by making 
> sure that query failures are distinct from partial results



--
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