<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:Arial;
        color:windowtext;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>As far as I can tell it crashes even before it uses swap, I
had one test where it didn&#8217;t use swap space at all.&nbsp; Were you able to find
any reason for the memory usage to shoot up like that?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Bryan<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>
ejabberd-bounces@jabber.ru [mailto:ejabberd-bounces@jabber.ru] <b><span
style='font-weight:bold'>On Behalf Of </span></b>Staudinger, Ulrich<br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, February 06, 2006
12:41 PM<br>
<b><span style='font-weight:bold'>To:</span></b> ejabberd@jabber.ru<br>
<b><span style='font-weight:bold'>Subject:</span></b> AW: [ejabberd] Jab_simul
crashing ejabberd service</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>That basically matches my experience. </span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>Everything goes fine until the server
starts to swap. So, ;-), try to not bring it into swapping. </span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>We have had 20k users with 1 message per 1
user in 1 minute -&gt; 20k messages/minute on a 1GB machine for days. No
problems so far. </span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>The restriction that&nbsp;i found is the
memory consumption -&nbsp;it goes linear up through the ceiling. With 1GB of
Ram, 22k is the max for our linux machine. .</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>Cheers,</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>Ulrich</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span lang=DE style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabIndex=-1>

</span></font></div>

<p class=MsoNormal style='margin-bottom:12.0pt'><b><font size=2 face=Tahoma><span
lang=DE style='font-size:10.0pt;font-family:Tahoma;font-weight:bold'>Von:</span></font></b><font
size=2 face=Tahoma><span lang=DE style='font-size:10.0pt;font-family:Tahoma'>
ejabberd-bounces@jabber.ru [mailto:ejabberd-bounces@jabber.ru] <b><span
style='font-weight:bold'>Im Auftrag von </span></b>Bryan Barnes<br>
<b><span style='font-weight:bold'>Gesendet:</span></b> Montag, 6. Februar 2006
19:36<br>
<b><span style='font-weight:bold'>An:</span></b> ejabberd@jabber.ru<br>
<b><span style='font-weight:bold'>Betreff:</span></b> [ejabberd] Jab_simul
crashing ejabberd service</span></font><span lang=DE><o:p></o:p></span></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Hello,<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>I am running Ejabberd 1.0.0 with Erlang 10B-8. I am using Jab_simul to
benchmark the system, and am using
http://tkabber.jabber.ru/files/badlop/jab_simul.xml.chat60 as a baseline for my
testing. I have modified it for my server, and turned off rostering. I can run
the test successfully, and as I lower the message frequency my performance
degrades as I expected it to. However, I notice that during these tests my
server occasionally spikes in memory usage and begins using swap space, then
the jabber service refuses all further connections.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The test will run with no errors for about an hour with message
frequency of 500 ms, then in the space of 5 minutes the memory usage will spike
from 400MB to 2GB and the swap space usage will jump from 0MB to 1GB. Then all
current connections are dumped and all further connections are refused. Even if
I restart the ejabberd service I am unable to log in, and have to restart the
server before I can connect again.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>I am running Gentoo 2.6.14-r5 with 2GB of memory and a 1GB NIC. I have
ejabberd starting as a service with the following command line:<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>ulimit -n 15000;/usr/local/bin/erl -pa /var/lib/ejabberd/ebin -sname
ejabberd -s ejabberd -env ERL_MAX_PORTS 5000 -env ERL_MAX_ETS_TABLES 20000
-ejabberd config \&quot;/etc/ejabberd/ejabberd.cfg\&quot; log-path
\&quot;/var/log/ejabberd.log\&quot; -sasl sasl_error_logger
\{file,\&quot;var/log/ejabberd/sasl.log\&quot;\} -mnesia dir
\&quot;var/lib/ejabberd/spool\&quot; +P 250000 +K true -detached<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><b><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black;font-weight:bold'>After troubleshooting:<o:p></o:p></span></font></b></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>No error messages appear on the ejabberd server,
I checked the ejabberd.log, sasl.log, and the server logs. All of the errors
appeared on the Jab_simul server.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>I figured out that every time the server
crashed the ejabberd server, the jab_simul server had run out of disk space. I assumed
this was unrelated, but setup a cron job to delete the tmp log files. This did
make the error go away, and I was able to run a simulation for 70 hours this
weekend with no errors. I had 500 users with a message frequency of 100 ms
using 160MB of memory.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>I was able to recreate the error even with
these settings by adding an additional 300 users, bringing me to 800 total. The
job runs for 5 minutes, then I start getting Kolejka za dluga, pakiet
anulowany! errors. Shortly after that I get POLLERR: Connection terminated and
POLLERR: Connection refused errors.&nbsp; All of these errors occur on the
Jab_simul server.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>Checking my ejabberd server, my beam
service has become a zombie process, and is still running, but refuses all
connections. The memory usage on the server spiked and then came back down
after the beam service crashed.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>If I dial the message frequency back to
500 ms with 800 users, it runs.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>I don't understand the interaction between
ejabberd and jab_simul enough to understand why this is happening, but I am
concerned that the POLLERR errors are causing my ejabberd server to crash. I
was unable to find any mention of this problem, has anything like it occurred
before?<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><b><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black;font-weight:bold'>After even more
troubleshooting:<o:p></o:p></span></font></b></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>I have discovered that if I restart the
ejabberd service, then I am still unable to connect using a Jabber client, but
that if I restart the server I am able to connect again.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>If I leave the Jab_simul simulation
running, it will reconnect to Jabber after a server restart, but not a service
restart.&nbsp; For all of the test data above I was using the default message
in the .xml file.<o:p></o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoPlainText><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;color:black'>Any assistance with this would be greatly
appreciated.&nbsp; Thank you.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Bryan Barnes</span></font>&nbsp;<o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</body>

</html>