hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleg Kalnichevski <ol...@apache.org>
Subject Re: Handling idle timeout disconnect
Date Sat, 22 Feb 2014 14:10:03 GMT
On Fri, 2014-02-21 at 23:07 +0000, sebb wrote:
> Further to the recent email about unexpected behaviour in JMeter when
> staleCheck was disabled, the cause has been determined.
> 
> The problem was caused by a server operating an idle timeout policy,
> but failing to send a Keep-Alive header with the timeout information.
> 

'Keep-Alive' is a non-standard header. Web servers do not have to
support it.

> Thus the HC code did not know that the connection would timeout, and
> tried to re-use it.
> This resulted in an immediate disconnect.
> Since JMeter does not retry by default, this caused the sample to fail.
> 
> I'm wondering whether this scenario should be handled automatically by HC.
> It could in theory happen even with servers that send the Keep-Alive
> header if the server and client ideas of elapsed time are not very
> consistent.
>
> The idea would be to retry the request IFF the connect immediately
> fails - i.e. before any data has been sent.
> 
> This could not cause a problem with non-idempotent requests, as the
> request would not actually have been sent.
> 
> Does that sound reasonable, or is it something the app developer needs
> to implement in a retry handler?
> 

I believe we already all these features in HttpClient. All you need is
to activate the default retry handler with retry count 1. Give it a
shot.

Cheers

Oleg



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Mime
View raw message