[erlang-patches] SSL distribution proxy processes must exit when sockets close

Paul Guyot <>
Mon Jan 30 14:17:28 CET 2012


In this very case, the bug is obvious, the fix is trivial, but a test would either be :
- too simplistic to actually add value to the test suite (it would use a fake node that would initiate a connection and then close the socket, but such a node would be implementation or at least protocol-dependent) ; or
- undeterministic (the leak typically happens under high loads, especially between nodes on two different servers). In particular, a test with real nodes would very likely fail when some important performance issues of SSL distribution are solved (you need to close the socket during the handshake).


Le 30 janv. 2012 à 14:02, Henrik Nord a écrit :

> Hi
> We would like this patch, but with tests.
> Could that be arranged?
> Thank you!
> On 01/29/2012 04:25 PM, Paul Guyot wrote:
>> Hello,
>> There is a bug in SSL distribution : the proxy processes do not exit if the sockets close during the setup. Since SSL distribution connections can be very slow to setup, this situation happens to be quite common on a production cluster and can yield to thousands of processes with close messages in their queue.
>> The following patch, based on maint branch, fixes this bug by simply exiting when a close message is received during setup.
>> https://github.com/pguyot/otp/compare/fix-ssl_tls_dist_proxy-setup-loop
>> git fetch git://github.com/pguyot/otp.git fix-ssl_tls_dist_proxy-setup-loop
>> Paul
> -- 
> /Henrik Nord Erlang/OTP

Semiocast            http://semiocast.com/
+33.183627948 - 20 rue Lacaze, 75014 Paris

More information about the erlang-patches mailing list