Florent Fourcot wrote:
the ejabberd has Memory leak with this configuration :
{5280, ejabberd_http, [
web_admin,
tls, {certfile, "/etc/ejabberd/ejabberd.pem"}
]}
Just tested 2.0.5-1.1 on Lenny machine:
1. The leakage also occurs without any HTTP request handlers
enabled, that is, with plain {5280, ejabberd_htp, []} listener
clause. Enabling/disabling TLS expectedly also does not affect
the observed behaviour.
2. Disabling logging using {loglevel, 0} does not help also
(I had an idea that logging could be a culprit as each connect
is logged on the default log level of 4).
3. The number of Erlang internal processes does not increase under
the test load: on my box it stays within the limit of 133-134
(with the fluctuation easily explained by existence of a process
when the connection on 5280 is active).
4. The test load provokes a backlog of leftover TCP sockets being in the
TIME_WAIT state. On my machine the sustained backlog floats around
5700 sockets. But suspending the nc activity to let the TCP/IP
subsystem clean these sockets up and then restarting the nc loop
causes the immediate memory growth, hance, the memory growth is not
caused by the leftover TCP sockets.
So currently it seems like a bug in the ejabberd_http module (or any
ejabberd code it uses), or Erlang/OTP inets module (which provides the
basic HTTP encoding/decoding facilities which are used by ejabberd_http).
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org