Hi Cyril, On Thu, Apr 25, 2013 at 10:04:21PM +0200, Cyril Bonté wrote: > Hi Willy, > > Le 25/04/2013 08:20, Willy Tarreau a écrit : > > (...) > >Thanks for this feedback. It would be nice if they could get a trace, as > >I suspect that rsyslog has the time to accept the connection first, which > >is not really desired. Or could they try to add "option tcp-smart-connect" > >to the backend to see if the issue disappears ? It should, because the > >sequence will be SYN, SYN/ACK, RST which the application never sees, and > >if so I think we should always enable this for pure TCP checks. > > Tried...and as expected, it works :-)
Great, this is exactly the news I was waiting for this evening :-) > >>Aside of their analysis, I wonder if it's possible to introduce a new > >>option "check-nolinger". This would let users choose one or the other > >>behaviour. > > > >I'd rather avoid this for the reasons which led us to this fix. Having > >the client close first in TCP is always problematic and we don't want > >to end up with thousands of TIME_WAIT sockets which cannot be reopened > >for 2 minutes. > > Don't worry, I prepared them for such a conclusion ;-) So I'll see how to enable this by default for health checks. The code will be different for 1.4 and 1.5 but it's worth doing it anyway. Cheers, Willy

