On 05/27/2014 08:21 PM, Willy Tarreau wrote:
What is happening here is simple : the client disconnected before the connection to the server managed to complete ("CC" flags), and you're running with "option abortonclose" which allows haproxy to kill a pending connection to the server.Given how short the request lasted, I guess that it's a script that sent this connection. It's basically sending the request and closing the output channel immediately, waiting for the response. You can get this behaviour using printf "$request" | nc $site 80. It's very likely a bot sucking your site, as browsers never ever do that. Using halog to sort them by IP will probably reveal that most of them come from a few IP addresses. For this you can run "halog -hs 503 -ic < log".
Yeah I was suspecting it's the client closing connection and was even planning on commenting out abortonclose later tonight in off hours (I'm running European +1 CEST based web site) :) So a great catch Willy!
What started all this is that I have around 3-4% error rate from GoogleBot (Googlebot can't access your site), and bosses/devs want to lower/eliminate that and found culprit in HaProxys 503 errors.
Is it by any chance possible that my ISP is somehow screwing up connections? Because I see this kind of aborts/503s even from regular clients fetching regular stuff?

