Christopher Faulet wrote:
Le 29/07/2024 à 09:05, Christopher Faulet a écrit :

Thanks, I will investigate. It is indeed most probably an issue with the
splicing, as Willy said. I will try to find the bug on the 2.8 and figure out if
upper versions are affected too.

I'm able to reproduce the issue by hacking the code, forcing a connection error by hand. It occurs when an error is reported on the connection when haproxy tries to send data using kernel splicing. But it is only an issue when a filter is attached to the applicative stream. I guess you have enabled the HTTP compression. The response is not compressed of course, otherwise the kernel splicing would not be used. But it is still attached to the stream and it has an effect in this case.

AFAIK, the older versions are not affected. On newer versions, I don't really know. There is an issue with my hack, but timeouts are still active and a true client abort is properly detected. So, I'm inclined to think there is no issue on these versions. But my fix will probably be applicable too.

I'm on the fix. I must test when this happens on server side, to be sure. But it should be fixed soon.


Thank you for the update.

My results so far: Everything is fine on 2.8.10 without splicing.

On 3.0.3 with splicing turned on, I have also not seen any lingering sessions, but I have only been running version 3.0.3 for some hours now, so this could still happen. I'll rather let it run for some more time before drawing conclusions.

Thanks,
Jens


Reply via email to