Hi list,

I'm debugging a very strange issue, where *something* is hanging up on
the client.

We're seeing this in the log whenever it happens:

Oct  4 13:46:27 bb10 haproxy[14480]: 97.89.249.238:28856
[04/Oct/2012:13:38:58.282] ssl servers-git/bb05 75/0/0/-1/+449030 -1
+0 - - CH-- 391/275/9/0/0 0/0 "POST /Envoc/brdnug.git/git-receive-pack
HTTP/1.1"
Oct  4 13:46:47 bb10 haproxy[14480]: 199.16.190.194:29765
[04/Oct/2012:13:46:29.173] ssl servers-hg/bb12 20/0/0/-1/+18450 -1 +0
- - CH-- 380/262/12/0/0 0/0 "POST /qlovi/qlovi2?cmd=unbundle HTTP/1.1"

On the client, it shows "An established connection was aborted by the
software in your host machine".

It happens sporadically, and at random times during the stream of
data. It always happens on POST requests. It also does not seem to
coincide with any of the timeouts, as it can take 5 seconds, or 5
minutes for it to happen. I should also point out, it seems to mainly
happen for people with high latency.

Reading the docs, the "CH--" is said to indicate: The timeout client
stroke while waiting for client data during a POST request. This is
sometimes caused by too large TCP MSS values for PPPoE networks which
cannot transport full-sized packets. It can also happen when client
timeout is smaller than server timeout and the server takes too long
to respond.

This seems to say that the *client* hangs up, not the server. Client
timeout is 5000 seconds, and the server timeout is 1 hour.

Here's the configuration:

global
  daemon
  maxconn 10000
  tune.bufsize 24576

defaults
  log global
  timeout connect 500s
  timeout client 5000s
  timeout server 1h

frontend ssl
  bind 127.0.0.1:8080 accept-proxy
  option httplog
  option logasap

  mode http
  errorfile 503 /etc/haproxy/503.http
  option http-server-close
  timeout http-keep-alive 5000

  default_backend servers-ssl

backend servers-ssl
  mode http
  log global
  option abortonclose
  option forwardfor except 127.0.0.0/8
  option forceclose

  […backends...]


I'm at a loss for why this is happening. If anyone could shed any
light on this, I'd highly appreciate it.


Jesper

Reply via email to