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

Pierre N. commented on HTTPCLIENT-2141:
---------------------------------------

I think most of your users doesn't know that the default retry strategy is able 
to hang forever, and specially when you did configure all the timeouts.

> Those timeouts aren't related to this strategy. The purpose of the strategy 
> is to obey the header. One could consider to add a max wait time.

I understand that, however, it is cumbersome to have to know all the place 
where you have to configure timeouts. What if there is another strategy or 
feature which may block the client forever in its own way ?

> Pierre N. What do you propose we do about it?

Beside adding a max wait time like [~michael-o] stated, I think we should be 
able to configure it from RequestConfig (all timeouts in one place).

If not possible, maybe avoid configuring strategy which may block in unexpected 
way by default (NoRetryStrategy by default).


> DefaultHttpRequestRetryStrategy has no timeout on retryafter header
> -------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-2141
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2141
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>    Affects Versions: 5.0.3
>            Reporter: Pierre N.
>            Priority: Major
>
> In *DefaultHttpRequestRetryStrategy.java:207* value of the HTTP retry header 
> of the failed server is reused as is by *HttpRequestRetryExec:143* to sleep 
> the thread. 
> A server returning a very far retry after header is able to block httpclient 
> request indefinetly by default (and even if proper connect, connection and 
> response timeouts have been set).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to