The problem is: when client sends a request with incomplete body (it has content-length but no body) then haproxy returns a 5XX error when it should be a client issue.
In the session.c file starting in 2404 i make sure that if I haven't received the entire body of the request I continue to wait for it by keeping AN_REQ_WAIT_HTTP as part of the request analyzers list as long as the client read timeout hasn't fired yet. In the proto_http.c file what I tried to do is avoid getting a server timeout when the client had timed-out already. Thank you for your prompt answer, Rachel On Thu, May 1, 2014 at 3:27 PM, Willy Tarreau <[email protected]> wrote: > Hi, > > On Thu, May 01, 2014 at 09:56:01AM -0400, Rachel Chavez wrote: > > Could someone please tell me if what I did is right? > > I posted this fix a while ago and I didn't get a response. > > > > http://marc.info/?l=haproxy&m=139506908430417&w=2 > > > > Thank you in advance, > > Could you please first describe the problem you encountered ? > > It's very hard to say if some code does the right thing in front > of no known problem. Moreover, your mailer has totally mangled > the patch, making it harder to understand. But at first glance > I'm seeing thing that don't look normal, such as returning 0 > from the analyser in case of timeout without even setting any > error. > > Thanks, > Willy > > -- Rachel Chavez

