jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tuukka Mustonen <tuukka.musto...@gmail.com>
Subject JMeter 3.1 httpclient4.retrycount does not work
Date Wed, 08 Mar 2017 13:14:45 GMT
My problem is that AWS Application Load Balancer (ALB) terminates all
existing connections during configuration changes (including auto-scaling).
As my perf tests trigger auto-scaling, I want to retry failed requests that
ALB connection termination causes.

This results in a bunch of NoHttpResponseException whenever scaling occurs
(=when ALB terminates existing connections).

(And yeah, this load balancer behavior is weird and ugly but it's what they
confirmed).

Using HttpClient 4, In user.properties I have set:

httpclient4.retrycount=1

But that does nothing. I even tried:

httpclient4.retrycount=100000000

But zero effect.

Switching to HttpClient 3.1 reproduces the problem. However, with
HttpClient 3 and:

httpclient3.retrycount=1

The problem vanishes so I assume retrying then works.

I couldn't find where retry-attempts are logged so I have no "proof" that
HttpClient 4 wouldn't actually retry, but a) retrycount makes difference on
HttpClient 3.1 but not on 4 b) I would assume my whole process should crash
with retrycount=100000000 if it was really applied.

Related question: is http.connection.stalecheck$Boolean=false (in
hc.parameters file) valid anymore on JMeter 3.x with improved retry/stale
logic (and httpclient4.validate_after_inactivity)? The line is still there
in bundled hc.parameters file...

Tested on JMeter 3.1.

Any open (or already fixed) tickets about this? Couldn't find any...

FYI: to describe better what happens during ALB connection termination:

...Successful communication with keep-alive...
- ALB responds to a request, and sends Connection: keep-alive so JMeter
leaves the connection open
- JMeter sends a new request
- ALB may might or might not ack it (not sure if there was pattern)
- ALB closes connection on TCP level (FIN)
- Connection gets closed and so sent request failed and needs to be retried

I think this generates NoHttpResponseException in JMeter.

Tuukka

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message