You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Connection Reset since JMeter 2.10 ?

If you upgraded recently to JMeter 2.10 or 2.11, you may have noticed increased errors of this type:

  • Socket closed
  • Non HTTP response code: org.apache.http.
  • NoHttpResponseException (the target server failed to respond)

Explanation

The increase of this type of errors can be explained by two settings changes:

  • retry of failing request (idempotent) has been disabled in JMeter 2.10
  • stale check in HTTP Client 3 and 4 implementations has been disabled in JMeter 2.11

Why these changes?

Previous retry default settings led to increased number of Requests in certain type of failures Previous stale check was a bit expensive, as it applied to every sample.

That is why the default was changed to disable it.

Retry or stale check can hide issues on Server configuration:

  • Server failing to handle correctly Keep-Alive header
  • Overwhelmed server refusing connection, retrying can increase load

Changing configuration:

If you think this server behaviour is OK, then configuration can be changed in two places:

Enabling retry

For HttpClient 4, in user.properties set :

  • httpclient4.retrycount=0

For HttpClient 3, in user.properties set:

  • httpclient3.retrycount=0

Enabling stale check

For HC4 Implementation:

In user.properties:

  • hc.parameters.file=hc.parameters

In hc.parameters set:

  • http.connection.stalecheck$Boolean=true

For HC3 Implementation:

In user.properties:

  • httpclient.parameters.file=httpclient.parameters

In httpclient.parameters set:

  • http.connection.stalecheck$Boolean=true

New setting in JMeter 2.12

Upcoming version of JMeter will add a setting to add connection timeout if the server does not send Keep-Alive headers.

This value is in milliseconds:

  • httpclient4.idletimeout=<>

Interesting links:

Author:

Philippe M.

  • No labels