IMAP hibernate feature committed

Teemu Huovila teemu.huovila at dovecot.fi
Thu Aug 27 11:58:57 UTC 2015


On 08/26/2015 01:33 PM, Thomas Leuxner wrote:
> * Timo Sirainen <tss at iki.fi> 2015.08.25 22:21:
> 
>> There's no good default setting here. It depends on your userdb settings and/or mail_uid setting. So for example if your imap processes are running as vmail user, you should set service imap-hibernate { unix_listener imap-hibernate { user = vmail } }. Then again if you are using system users (or otherwise multiple UIDs) it gets more difficult to implement this securely (mode=0666 works always, but security isn't too good). This same problem exists for various other parts of Dovecot, for example indexer-worker and dict services.
> 
> I have it working (I guess) with these user settings (virtual users using 'vmail'):
> 
> service imap-hibernate {
>   unix_listener imap-hibernate {
>     user = vmail
>   }
> }
> 
> I had to assign the imap-master socket the user the imap-hibernate process is using to avoid messages like this:
> 
> Aug 25 23:16:02 nihlus dovecot: imap-hibernate(tlx at leuxner.net): Error: net_connect_unix(/var/run/dovecot/imap-master) failed: Permission denied
> Aug 25 23:16:02 nihlus dovecot: imap-hibernate(tlx at leuxner.net): Failed to connect to master socket in=126 out=944 hdr=0 body=0 del=0 exp=0 trash=0
> 
> service imap {
>   unix_listener imap-master {
>     user = dovecot
>   }
> }
> 
> With this I see messages like this in the logs:
> 
> Aug 26 09:48:06 nihlus dovecot: imap-hibernate(tlx at leuxner.net): Connection closed in=189 out=4252 hdr=0 body=0 del=0 exp=0 trash=0
> Aug 26 12:20:29 nihlus dovecot: imap-hibernate(tlx at leuxner.net): Connection closed in=109 out=4714 hdr=0 body=0 del=0 exp=0 trash=0
> 
> I'm a bit puzzled as to when hibernate actually kicks in because most of the time I see normal imap processes running without them being hibernated:
Did you specify a value other than zero for 'imap_hibernate_timeout'?

br,
Teemu

> $ ps aux | grep dovecot/imap
> dovenull  6791  0.0  0.0  18196  4772 ?        S    06:39   0:00 dovecot/imap-login
> dovenull  7107  0.0  0.0  18196  4736 ?        S    08:00   0:00 dovecot/imap-login
> dovenull  7112  0.0  0.0  18332  4492 ?        S    08:00   0:00 dovecot/imap-login
> dovenull  7333  0.0  0.0  18332  4772 ?        S    08:45   0:00 dovecot/imap-login
> dovenull  7675  0.0  0.0  18196  4628 ?        S    10:13   0:00 dovecot/imap-login
> dovenull  7677  0.0  0.0  18332  4532 ?        S    10:14   0:00 dovecot/imap-login
> dovenull  7821  0.0  0.0  18196  4532 ?        S    10:44   0:00 dovecot/imap-login
> dovenull  8156  0.0  0.0  18196  4756 ?        S    12:01   0:00 dovecot/imap-login
> vmail     8157  0.0  0.0  45624  9608 ?        S    12:01   0:00 dovecot/imap
> dovenull  8158  0.0  0.0  18332  4628 ?        S    12:01   0:00 dovecot/imap-login
> vmail     8159  0.0  0.0  44772  9256 ?        S    12:01   0:00 dovecot/imap
> dovenull  8160  0.0  0.0  18196  4652 ?        S    12:01   0:00 dovecot/imap-login
> vmail     8161  0.0  0.0  46072  9760 ?        S    12:01   0:00 dovecot/imap
> dovenull  8162  0.0  0.0  18196  4548 ?        S    12:01   0:00 dovecot/imap-login
> dovenull  8279  0.0  0.0  18332  4736 ?        S    12:22   0:00 dovecot/imap-login
> vmail     8280  0.0  0.0  40712  5164 ?        S    12:22   0:00 dovecot/imap
> dovenull  8341  0.0  0.0  18196  4740 ?        S    12:25   0:00 dovecot/imap-login
> vmail     8344  0.0  0.0  46312 10568 ?        S    12:25   0:00 dovecot/imap
> 



More information about the dovecot mailing list