On Sun, 27 Jul 2008, Kai Schaetzl wrote:
It does kill everything. Not for me, not with the 1.07 I have in CentOS 5.2. When I ran "service dovecot restart" (or stop) in that situation it did *not* kill all the pop3-login children. I had to use killall.
It is normal for some services to terminate te main process, but leave active children alive. Especially for pop3 processes, as they can be considered to terminate soon due to protocol design. Same goes for ssh for example. You can kill (stop, or restart) the main sshd, without killing the sessions currently running. Exim also does similar things. Killing all children could result in data corruption, since seen flags etc. need to be saved before exiting.
The "restarting after 2 seconds" thing I just saw in another mail can possibly be prevented by using the appropriate setsockopts on the listen port (SO_REUSEADDR in this case, if I'm not mistaken). This may however very well be a Linux-specific solution.
Regards, Maarten Bezemer