Hi,
I've recently switched from courier-imap to dovecot. Everything seemed to work fine, but after I while I noticed that dovecot is occasionaly causing problems with delivery of new incoming mails.
System: Gentoo Linux, kernel 2.6.19, qmail 1.03, vpopmail 5.4.26 , dovecot 1.1.11, maildir, mail store on ext3.
Symptoms: qmail is having trouble with the mail delivery.
First I thought it had something to do with vpopmail or dovecot's quota support, but I tracked it down to qmail-local. I tried two different versions, one with Bill Shupp's maildir++ patch and one without.
With the patch, I'm getting "User_over_quota._(#5.1.1)" errors. Mail is delivered once and sender is sent a notification about the exceeded quota. Without the patch, I get "Temporary_error_on_maildir_delivery._(#4.3.0)". Mail is delivered, but delivery is tried again and again.
This only happens if a MUA is logged in to the mailbox and IMAP IDLE is being used. If the MUA is disconnected: fine. If dovecot is stopped: fine.
I tried a couple of different things, all without success:
- upgraded dovecot from 1.1.7 to 1.1.11
- compiled a new kernel with inotify support and recompiled dovecot
- migrated mail store from reiserfs to ext3
- disabling quota support in dovecot
- tried dovecot's various file locking mechanisms
Right now I'm working around this by removing IDLE from the capabilities. This solves the problem, but leaves me with a less functional IMAP server.
Any help is greatly appreciated.
Jochen
dovecot -n:
protocols: imaps imap pop3s pop3 listen(default): *:143 listen(imap): *:143 listen(pop3): *:110 ssl_listen(default): *:993 ssl_listen(imap): *:993 ssl_listen(pop3): *:995 ssl_cert_file: /etc/ssl/dovecot/server.pem ssl_key_file: /etc/ssl/dovecot/server.key disable_plaintext_auth: no verbose_ssl: yes login_dir: /var/run/dovecot/login login_executable(default): /usr/libexec/dovecot/imap-login login_executable(imap): /usr/libexec/dovecot/imap-login login_executable(pop3): /usr/libexec/dovecot/pop3-login first_valid_uid: 89 last_valid_uid: 89 first_valid_gid: 89 last_valid_gid: 89 mail_uid: 89 mail_gid: 89 mail_location: maildir:/var/vpopmail/domains/%d/%n/.maildir maildir_copy_preserve_filename: yes mail_executable(default): /usr/libexec/dovecot/imap mail_executable(imap): /usr/libexec/dovecot/imap mail_executable(pop3): /usr/libexec/dovecot/pop3 mail_plugins(default): quota imap_quota mail_plugins(imap): quota imap_quota mail_plugins(pop3): quota mail_plugin_dir(default): /usr/lib/dovecot/imap mail_plugin_dir(imap): /usr/lib/dovecot/imap mail_plugin_dir(pop3): /usr/lib/dovecot/pop3 imap_capability(default): IMAP4rev1 SASL-IR SORT THREAD=REFERENCES MULTIAPPEND UNSELECT LITERAL+ CHILDREN NAMESPACE LOGIN-REFERRALS UIDPLUS LIST-EXTENDED I18NLEVEL=1 QUOTA imap_capability(imap): IMAP4rev1 SASL-IR SORT THREAD=REFERENCES MULTIAPPEND UNSELECT LITERAL+ CHILDREN NAMESPACE LOGIN-REFERRALS UIDPLUS LIST-EXTENDED I18NLEVEL=1 QUOTA imap_capability(pop3): imap_client_workarounds(default): outlook-idle delay-newmail imap_client_workarounds(imap): outlook-idle delay-newmail imap_client_workarounds(pop3): namespace: type: private prefix: INBOX. inbox: yes list: yes subscriptions: yes auth default: mechanisms: plain login digest-md5 user: vpopmail verbose: yes debug: yes passdb: driver: vpopmail userdb: driver: vpopmail plugin: quota: maildir