On June 14, 2016 at 6:02 PM Roland Rosenfeld <rrosenfeld@netcologne.de> wrote:
I try to restart dovecot 2.2.24 (for changing limits) without killing all IMAP and POP3 sessions.
dovecot(1) tells me: When shutdown_clients is set to no, existing sessions will continue to use the old settings, after a dovecot reload. Also all sessions will keep alive after a dovecot stop. By default all active sessions will be shut down.
According to my "dovecot -n" (see below), I have set "shutdown_clients=no", so "doveadm stop" should keep my open sessions.
But if I try this out with a simple telnet to port 143 during "doveadm stop", I see the following:
$ telnet imap 143 Connected to imap. Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN AUTH=LOGIN] Dovecot ready. a login user@example.com XXXXX a OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE QUOTA ACL RIGHTS=texk] Logged in
- BYE Server shutting down. Connection closed by foreign host.
The "BYE Server shutting down." happens exactly at the time, when I press return after "doveadm stop", "systemctl stop dovecot", or "systemctl restart dovecot" in the other shell. Only "systemctl reload dovecot" keeps the open sessions healthy.
So it seems that either the man page is wrong, or shutdown_clients=no has no effect after dovecot stop...
Greetings Roland
Are you using systemd by chance?
Aki Tuomi