On 2019-02-01 17:02, Willy Tarreau wrote:
Hi Veiko,
Are you certain that 1.9 and 1.7 have the same issue ? I mean, you
could be observing two different cases looking similar. If you're
sure it's the same issue, it could rule out a number of parts that
differ quite a lot between the two (idle conns etc).
I'm sure it happens with all versions we have tried: 1.6, 1.7, 1.9 (did
not try 1.8, because we have never used it in production and decided to
switch directly to 1.9), but how could we make sure it's caused by
something different between versions if we observe very similar results.
Since it's happening at random, it's hard to judge if there is slight
change in one or another direction. Logs look same for all versions.
Only 'mode tcp' helps to get rid of those errors.
Do you know if the responses headers are properly delivered to the
client when this happens ? And do they match what you expected ? Maybe
the contents are sometimes invalid and the response rejected by
haproxy,
in which case a 502 would be returned to the client. When this happens,
emitting "show errors" on the CLI will report it.
I don't know, don't know about headers, don't have good tool to capture
headers for failed connections only. Any suggestions?
echo "show errors" |/usr/bin/socat /var/run/haproxy.sock.stats1 stdio
Total events captured on [04/Feb/2019:13:46:33.167] : 0
Could you also check if this happens only/more with keep-alive, close
or
server-close ?
I have seen no difference, unfortunately.
If you can run more tests in your test environment, I'd be interested
in
seeing how latest 2.0-dev works with these variants :
Tested with
http://www.haproxy.org/download/2.0/src/snapshot/haproxy-ss-20190204.tar.gz
- http-reuse never
No difference, lot's of incomplete transfers.
- http-reuse always
No difference, lot's of incomplete transfers.
- option httpclose
No difference, lot's of incomplete transfers.
- option http-server-close
No difference, lot's of incomplete transfers.
- option keep-alive
I assume you meant 'option http-keep-alive' because there is no 'option
keep-alive'.
No difference, lot's of incomplete transfers.
I'm asking for 2.0-dev because it's where all known bugs are fixed.
If none of these settings has any effect, we'll have to look at network
traces I'm afraid.
Would you like to have network traffic dump?
Regards,
Veiko