When stressing dovecot's delivery agent, I sporadically encountered the following assertion failures and the associated errors. I was trickling in ~50 messages per minute to this mailbox via postal.
Nov 30 09:38:41 mail deliver(example@example.com): close(/home/vmail/domains//+/example.com/k/example//Maildir/maildirsize) failed: Bad file descriptor Nov 30 09:38:41 mail deliver(example@example.com): rename(/home/vmail/domains//+/example.com/k/example//Maildir/maildirsize.lock, /home/vmail/domains//+/example.com/k/example//Maildir/maildirsize) failed : No such file or directory Nov 30 09:38:41 mail deliver(example@example.com): file_dotlock_replace(/home/vmail/domains//+/example.com/k/example//Maildir/maildirsize) failed: No such file or directory Nov 30 09:38:41 mail deliver(example@example.com): Internal quota calculation error Nov 30 09:38:41 mail deliver(example@example.com): file index-transaction.c: line 54 (index_transaction_finish_rollback): assertion failed: (t->mail_ref_count == 0) Nov 30 09:38:41 mail deliver(example@example.com): Raw backtrace: /usr/lib/dovecot/deliver(i_syslog_fatal_handler+0x2b) [0x80bf0ab] -> /usr/lib/dovecot/deliver [0x80beeba] -> /usr/lib/dovecot/deliver [0x 808f243] -> /usr/lib/dovecot/deliver(index_transaction_rollback+0x1a) [0x808f06a] -> /usr/lib/dovecot/modules/lda/lib10_quota_plugin.so [0xb7ea2f13] -> /usr/lib/dovecot/deliver(deliver_save+0x212) [0x8059412] -> /usr/lib/dovecot/deliver(main+0x12cb) [0x805a79b] -> /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xc8) [0xb7ebcea8] -> /usr/lib/dovecot/deliver [0x8058611]
# dovecot -n # 1.1.beta9: /etc/dovecot/dovecot.conf base_dir: /var/run/dovecot/ protocols: imap imaps pop3 pop3s login_dir: /var/run/dovecot/login login_executable(default): /usr/lib/dovecot/imap-login login_executable(imap): /usr/lib/dovecot/imap-login login_executable(pop3): /usr/lib/dovecot/pop3-login login_greeting: Nationwide Internet Mail Server ready. verbose_proctitle: yes 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:/home/vmail/domains/%h/Maildir mail_debug: yes mmap_disable: yes mail_nfs_storage: yes mail_nfs_index: yes lock_method: dotlock mail_executable(default): /usr/lib/dovecot/rawlog /usr/lib/dovecot/imap mail_executable(imap): /usr/lib/dovecot/rawlog /usr/lib/dovecot/imap mail_executable(pop3): /usr/lib/dovecot/pop3 mail_plugin_dir(default): /usr/lib/dovecot/imap mail_plugin_dir(imap): /usr/lib/dovecot/imap mail_plugin_dir(pop3): /usr/lib/dovecot/modules/pop3 imap_client_workarounds(default): delay-newmail imap_client_workarounds(imap): delay-newmail imap_client_workarounds(pop3): pop3_uidl_format(default): %08Xu%08Xv pop3_uidl_format(imap): %08Xu%08Xv pop3_uidl_format(pop3): %f pop3_client_workarounds(default): pop3_client_workarounds(imap): pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh auth default: mechanisms: login plain cram-md5 digest-md5 username_format: %Lu verbose: yes debug: yes passdb: driver: sql args: /etc/dovecot/dovecot-sql.conf userdb: driver: sql args: /etc/dovecot/dovecot-sql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: postfix master: path: /var/run/dovecot/auth-master mode: 384 user: vmail group: vmail plugin: quota: maildir quota_rule: *:storage=102400
This is the latest hg sources, somewhat after beta9: $ hg tip changeset: 6877:a5a7d38b6df7 branch: HEAD tag: tip user: Timo Sirainen tss@iki.fi date: Thu Nov 29 19:38:06 2007 +0200