On Wed, January 16, 2008 5:37 pm, Timo Sirainen wrote:
On Sun, 2008-01-13 at 11:01 +0100, mikkel@euro123.dk wrote:
deliver(mikkel@euro123.dk): Jan 13 10:44:53 Panic: file index-mail.c: line 1042 (index_mail_close): assertion failed: (!mail->data.destroying_stream)
So this only happens with deliver? Does it break if you don't have Sieve plugin loaded? What about other plugins?
There are no problems what so ever except in this very specific situation. Sieve works flawlessly in other situations. I've specificly operations such as "fileinto" and "vacation" to see if they would cause an error as well - which they did not.
But when I use "redirect" it returns the "e-mail undeliverable" message to the sender. Even though the e-mail gets forwarded as expected. It works the same whether I combine "redirect" with "keep" and the result is always the same no matter what account I'm testing.
Deliver does something after forwading the message which makes it fail. For some reason it then thinks that the delivery didn't happen and returns an error to the sender. That error states "mikkel@euro123.dk: Command died with signal 6: "/opt/freeware/dovecot-20080113/libexec/dovecot/deliver""
This has got to narrow the cause of error down to one very specific part of the code (after delivery but before passing the OK signal or whatever it does to tell that the delivery was successfull).
I looks like the faillure happens when deliver tries to update the index of the account that the e-mails is being forwarded to. I figured that it somehow couldn't find the directory and that is what causes the error. But that's not the case since maildirsize gets updated correctly on that account (the account that the mail is being forwarded to). Also the dirlist shows me that dhe index files have ben updated at the same time as maildirsize.
ls -l drwx------ 2 vmail vmail 4 Jan 16 21:00 cur -rw------- 1 vmail vmail 114 Jan 16 21:00 dovecot-uidlist -rw------- 1 vmail vmail 216 Jan 16 21:00 dovecot.index -rw------- 1 vmail vmail 17408 Jan 16 21:00 dovecot.index.cache -rw------- 1 vmail vmail 1408 Jan 16 21:00 dovecot.index.log -rw------- 1 vmail vmail 38 Jan 16 21:00 maildirsize drwx------ 2 vmail vmail 2 Jan 16 21:00 new -rw------- 1 vmail vmail 17 Jan 16 20:48 subscriptions drwx------ 2 vmail vmail 2 Jan 16 21:12 tmp.
Would the deliver core dump be of any interest to you? It places the dump in the home directory where the sieve file of the forwarding account is also located.
I've tried to reproduce this a few times but haven't been able to. So if you could figure out what configuration/setting specifically causes this crash (or does it crash even with default configuration?) that would help fixing it..
Here is my dovecot configuration:
/opt/freeware/dovecot-20080113/sbin/dovecot -c /local/config/dovecot.conf -n # 20080113: /local/config/dovecot.conf Warning: fd limit 256 is lower than what Dovecot can use under full load (more than 768). Either grow the limit or change login_max_processes_count and max_mail_processes settings log_path: /local/log/dovecot.run info_log_path: /local/log/dovecot.run protocols: imap pop3 ssl_disable: yes disable_plaintext_auth: no login_dir: /opt/freeware/dovecot-20080113/var/run/dovecot/login login_executable(default): /opt/freeware/dovecot-20080113/libexec/dovecot/imap-login login_executable(imap): /opt/freeware/dovecot-20080113/libexec/dovecot/imap-login login_executable(pop3): /opt/freeware/dovecot-20080113/libexec/dovecot/pop3-login login_process_per_connection: no verbose_proctitle: yes first_valid_uid: 105 first_valid_gid: 105 mmap_disable: yes mail_nfs_storage: yes mail_nfs_index: yes mail_executable(default): /opt/freeware/dovecot-20080113/libexec/dovecot/imap mail_executable(imap): /opt/freeware/dovecot-20080113/libexec/dovecot/imap mail_executable(pop3): /opt/freeware/dovecot-20080113/libexec/dovecot/pop3 mail_plugins(default): quota imap_quota trash mail_plugins(imap): quota imap_quota trash mail_plugins(pop3): quota mail_plugin_dir(default): /opt/freeware/dovecot-20080113/lib/dovecot/imap mail_plugin_dir(imap): /opt/freeware/dovecot-20080113/lib/dovecot/imap mail_plugin_dir(pop3): /opt/freeware/dovecot-20080113/lib/dovecot/pop3 imap_client_workarounds(default): outlook-idle delay-newmail tb-extra-mailbox-sep imap_client_workarounds(imap): outlook-idle delay-newmail tb-extra-mailbox-sep imap_client_workarounds(pop3): pop3_client_workarounds(default): pop3_client_workarounds(imap): pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh auth default: mechanisms: plain login digest-md5 cram-md5 apop ntlm cache_size: 4096 cache_ttl: 120 passdb: driver: sql args: /local/config/dovecot-sql.conf userdb: driver: prefetch userdb: driver: sql args: /local/config/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 plugin: quota: maildir quota_rule2: Trash:storage=10M:messages=100 trash: /local/config/dovecot-trash.conf
Regards, Mikkel