Hi all,
I'm experiencing a systematic crash with icecast2 when I goes in this case
(tested with debian 2.3.1-5 2.3.1-6 and latest trunk)
When there is more than ~1400 clients connected and a mountpoint that was not
relaying goes online it crash.
Without this I can go up to 5000 clients without problems. Changing the number
of threadpool does'nt change anything.
here is the term log:
stream-04:/etc/icecast2# icecast2 -c /etc/icecast2/icecast.xml
Changed groupid to 105.
Changed userid to 102.
Segmentation fault
stream-04:/etc/icecast2#
error.log in debug:
[2008-01-31 16:38:58] DBUG source/source_main Client added
[2008-01-31 16:38:58] DBUG source/source_main Client added
[2008-01-31 16:38:58] DBUG source/source_main Client added
[2008-01-31 16:38:58] INFO source/source_main listener count on
/fbidf/all/fbidf-32k.mp3 now 966
[2008-01-31 16:38:58] DBUG format/format_check_http_buffer processing pending
client headers
[2008-01-31 16:38:58] DBUG format/format_check_http_buffer processing pending
client headers
[2008-01-31 16:38:58] DBUG format/format_check_http_buffer processing pending
client headers
[2008-01-31 16:38:58] DBUG auth/add_listener_to_source max on
/fbidf/all/fbidf-32k.mp3 is -1 (cur 966)
[2008-01-31 16:38:58] DBUG auth/add_listener_to_source Added client to
/fbidf/all/fbidf-32k.mp3
[2008-01-31 16:38:58] DBUG auth/add_authenticated_listener client
authenticated, passed to source
[2008-01-31 16:38:58] DBUG auth/add_listener_to_source max on
/centpourcent/all/centpourcent-128k.mp3 is -1 (cur 910)
[2008-01-31 16:38:58] DBUG auth/add_listener_to_source Added client to
/centpourcent/all/centpourcent-128k.mp3
[2008-01-31 16:38:58] DBUG auth/add_authenticated_listener client
authenticated, passed to source
[2008-01-31 16:38:58] DBUG source/source_main Client added
[2008-01-31 16:38:58] INFO source/source_main listener count on
/centpourcent/all/centpourcent-128k.mp3 now 911
[2008-01-31 16:38:58] DBUG format/format_check_http_buffer processing pending
client headers
[2008-01-31 16:38:58] INFO slave/start_relay_stream Starting relayed source at
mountpoint "/telerama/all/telerama-128k.mp3"
[2008-01-31 16:38:58] INFO slave/open_relay_connection connecting to
10.10.30.49:9042
And nothing more.
Here is my config files general options:
<icecast>
<limits>
<clients>8192</clients>
<sources>1024</sources>
<threadpool>128</threadpool>
<queue-size>524288</queue-size>
<client-timeout>1</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>60</source-timeout>
<!-- If enabled, this will provide a burst of data when a client
first connects, thereby significantly reducing the startup
time for listeners that do substantial buffering. However,
it also significantly increases latency between the source
client and listening client. For low-latency setups, you
might want to disable this. -->
<burst-on-connect>no</burst-on-connect>
<!-- same as burst-on-connect, but this allows for being more
specific on how much to burst. Most people won't need to
change from the default 64k. Applies to all mountpoints -->
<burst-size>65536</burst-size>
</limits>
And my mountpoints are all defined like this:
<relay>
<max-listeners>10000</max-listeners>
<server>10.10.30.49</server>
<port>9036</port>
<mount>/</mount>
<local-mount>/XXX/all/XXX-32k.mp3</local-mount>
<on-demand>0</on-demand>
<relay-shoutcast-metadata>1</relay-shoutcast-metadata>
<no-yp>1</no-yp>
</relay>
The relaying source server is a shoutcast.
I don't think this is a file descriptor limitation as I can have more than
5000
clients and 65536 open fd.
Thanks in advance for any explanation.
--
Laurent Corbes - laurent.corbes@smartjog.com
+33 (0)1 4996 6325
Smartjog SA - http://www.smartjog.com/