[Kolab-devel] kolab daemon, not really daemon !

Alain Spineux aspineux at gmail.com
Fri Aug 10 22:04:40 CEST 2007


I made a shorter test. It show how all services suffer the same problem.

But in 2.2 beta 1 cyrus is not connected anymore to the terminal.

It looks native redhat/fedora mysql services also keep fd open, but
other are fine

--------- snip ----------
#!/bin/bash

touch /tmp/kolab.bug
exec 45<> /tmp/kolab.bug

openpkg rc all stop start

sleep 10

echo Now look for open files in kolabs daemons then press ENTER
ps -p `fuser /tmp/kolab.bug 2> /dev/null `
read

exec 45>&-
--------- snip ----------



On 8/10/07, Alain Spineux <aspineux at gmail.com> wrote:
> Hello
>
> I don't know if this will break the BIG BANG theory, but ....
>
> You know a UNIX child process inherits some info from  its parent :
> open file (socket too:-) , session, terminal, some signal setup,
> current working dir,  ....
> But normally daemon process should close all the opened files and take care of
> all these stuff
>
> When I run kolabconf from my web interface I find some kolab's daemons
> inheriting these 'things' from my web application :-)
>
> Here is the test case, I use a script that open file /tmp/kolab.bug
> before to start kolabconf.
>
> I stop kolabd
>
> # openpkg rc kolabd stop
>
> I disable any cyrus related service in web admin : POP, IMAP, SIEVE ...,
> to force imapd to restart, then I run kolabconf
>
> # kolabconf
>
> Then I run this script
>
> -----------------------snip ----------------
> #!/bin/bash
>
> touch /tmp/kolab.bug
> exec 45<> /tmp/kolab.bug
>
> openpkg rc kolabd stop
>
> echo Chnage configuration in web admin ENTER
> read
>
> kolabconf
> sleep 5
>
> echo Now look for open files in kolabs daemons then press ENTER
> ps -p `fuser /tmp/kolab.bug 2> /dev/null `
> read
>
> exec 45>&-
> -----------------------snip ----------------
>
> At the first prompt  I restore the imap services in web admin , then
> press ENTER
>
> An get the following output :
>
> [root at fc6-eg trunk]# sh  kolab_bug.sh
> OpenPKG: stop: kolabd.
> Chnage configuration in web admin ENTER
>
> kolabconf - Kolab Configuration Generator
>
>   Version: 2.0.99
>
>   Copyright (c) 2004  Klaraelvdalens Datakonsult AB
>   Copyright (c) 2003  Code Fusion cc
>   Copyright (c) 2003  Tassilo Erlewein, Martin Konold, Achim Frank, erfrakon
>
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> OpenPKG: restart: imapd.
> OpenPKG: stop: proftpd.
> Now look for open files in kolabs daemons then press ENTER
>   PID TTY      STAT   TIME COMMAND
>  3425 pts/1    S+     0:00 sh kolab_bug.sh
>  3944 pts/1    S+     0:00 /kolab/bin/cyrmaster
>  3993 pts/1    S+     0:00 notifyd
> 32161 ?        Ssl    0:00 /kolab/libexec/openldap/slapd -h ldap:// ldaps://
> 32165 ?        Ssl    0:00 /kolab/libexec/openldap/slurpd
>
> Finally I press CTRL-C
>
> Here is the list of all process with "/tmp/kolab.bug" open !!!
> This means some daemon keep parents files opened !!!
> Imaging you start kolabconf from a web application, the
> web socket stay opened by these kolab daemon and you
> cannot restart your web application without restarting kolab !
>
> AND THE BEST OF THE BEST, when I kill my web application,
> I get some of these kolab's daemons killed too (imap a least,
> if you pressed CTRL-C, look if imap is still there) !!!
>
> All test made on fedora core 6 running kolab 2.1 beta 3
>
> I will test soon in centos 5 with kolab 2.2 beta 1
>
> Comment are welcome !!!
>
> Does it means openldap and cyrus developers are ...... !
> I hope I missed something !
>
> Regards
>
> --
> --
> Alain Spineux
> aspineux gmail com
> May the sources be with you
>


-- 
--
Alain Spineux
aspineux gmail com
May the sources be with you

_______________________________________________
Kolab-users mailing list
Kolab-users at kolab.org
https://kolab.org/mailman/listinfo/kolab-users




More information about the devel mailing list