Hello, The issue with Get with body should be fixed now: - https://bz.apache.org/bugzilla/show_bug.cgi?id=60837
Regards Philippe On Wed, Mar 8, 2017 at 8:53 PM, Philippe Mouawad <[email protected] > wrote: > Hello Tuukka, > > In my recent tests I didn't face any issue with httpclient4.retrycount. > For me it works but be aware that JMeter (HC4) does not retry all > requests, it only retries those it is allowed to : > - Idempotent HTTP methods which are by default those that do not implement > HttpEntityEnclosingRequest, so not POST, PUT,DELETE, PATCH, GET With body > (<= That might be a bug thinking more about it) > - Non retriable exceptions (InterruptedIOException.class, > UnknownHostException.class, ConnectException.class, SSLException.class) > - + Some other reasons > > See: > https://github.com/apache/httpclient/blob/4.5.x/ > httpclient/src/main/java/org/apache/http/impl/client/ > DefaultHttpRequestRetryHandler.java#L129 > > > Regards > Philippe > > > On Wed, Mar 8, 2017 at 2:14 PM, Tuukka Mustonen <[email protected] > > wrote: > >> 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 >> > > > > -- > Cordialement. > Philippe Mouawad. > > > -- Cordialement. Philippe Mouawad.
