Jessica Cheng Mallet created SOLR-7694:
------------------------------------------

             Summary: Allow setting an overall client request timeout that 
includes retries
                 Key: SOLR-7694
                 URL: https://issues.apache.org/jira/browse/SOLR-7694
             Project: Solr
          Issue Type: Improvement
          Components: SolrJ
            Reporter: Jessica Cheng Mallet


Current we're able to set a socket timeout on the underlying httpClient of an 
LBHttpSolrServer (used by CloudSolrServer). However, this timeout only applies 
to a single request that's issued from LBHttpSolrServer, but LBHttpSolrServer 
will go on to try all eligible candidate servers when a SocketTimeoutException 
is thrown, so that potentially the request can in fact take (socketTimeout * 
number of eligible servers) time to return from the caller's perspective. This 
is hard to predict.

We should allow setting an overall client request timeout apart from the single 
request socketTimeout, so that the request call is guaranteed terminate by this 
timeout (either via success or via a timeout exception). This allows the client 
application to properly size their timeout and request thread pools to avoid 
request thread exhaustion if solr is experiencing issues.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to