[Icecast] Why current mount connection don't close after remove from config and reload?

Philipp Schafft phschafft at de.loewenfelsen.net
Tue May 15 08:42:29 UTC 2018


Good morning,


On Mon, 2018-05-14 at 16:54 -0300, subscription at nextdial.com.br wrote:
> Hello Jake,
>   
>  Thanks for you reply.
>   
>  If I restart all listeners's connections would be droped (not only those 
> related to the droped mount). Nginx, for example, would reload the 
> configuration droping the server/location that don't exists anymore and 
> active the new ones. Icecast has not the same behaviour.
>   
>  Am I wrong? Is there any other way to do what I want to do?

You are both right.

The logic in Icecast is a bit different from general-purpose web servers
(or exactly the same, depending on how you look at it).

With a general-purpose web server an resource is created by creating the
file on the file system. Config is then applied to that resource.

With Icecast there is a different kind of resource, a source connection.
It is "mounted" when the source connects. This is the point the resource
is created. And it's destroyed on disconnect (like unlinking a flat file
for a normal web server). At the point the resource is created (mounted)
the config is applied to it.


When you reload the config with the source running the resource is still
there. Icecast tries to update it based on the new config. If there is
none it just doesn't get updated.


Your reference to nginx is a bit more complicated. nginx has more a
focus on how you organize your namespace. You likely think of the
"location" statement. Icecast has something similar, it's called <alias>
(2.4.x) / <resource> (2.5.x). If you change those the effects are also
active directly after reload.

So, how do you remove the resource in Icecast?: Just log into the admin
interface and select "Kill source" for the given source. It will
disconnect the source client, therefore unmount the resource and destroy
it.

Little side node: There is no need in Icecast to configure mount points.
It's just needed if you really need options that are not defaults
(Icecast defaults, or defaults set in other parts of your
configuration).

With best regards,


> ----------------------------------------
>  De: "Jake" <jake at jakebriggs.com>
> Enviado: segunda-feira, 14 de maio de 2018 16:28
> Para: subscription at nextdial.com.br, "Icecast streaming server user 
> discussions" <icecast at xiph.org>
> Assunto: Re: [Icecast] Why current mount connection don't close after 
> remove from config and reload?   
> Well I am only guessing here, but I suspect if icecast works like other 
> daemons reload just reloads the config but doesn't terminate current 
> connections. You probably want /etc/init.d/icecast restart
> 
>   On 15 May 2018 12:35:39 AM NZST, "subscription at nextdial.com.br" 
> <subscription at nextdial.com.br> wrote:  Hello,
>    
>  After removing a mount from the xml config file and reloading the Icecast 
> with the bellow command why it don't close the current mount connection?
>   
>  /etc/init.d/icecast2 reload
>   
>  There is another way?


-- 
Philipp Schafft (CEO/Geschäftsführer) 
Telephon: +49.3535 490 17 92

Löwenfelsen UG (haftungsbeschränkt)     Registration number:
Bickinger Straße 21                     HRB 12308 CB
04916 Herzberg (Elster)                 VATIN/USt-ID:
Germany                                 DE305133015
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part
URL: <http://lists.xiph.org/pipermail/icecast/attachments/20180515/521df5b6/attachment.sig>


More information about the Icecast mailing list