Hi,
thanks for your mail :)
Right. Dovecot creates such a "DO NOT DELETE" mail just as UW-IMAP/ Pine does. It's created when all messages from the mbox get deleted, so that UIDVALIDITY and NEXT-UID fields can be stored (without relying on them staying in index files).
But these messages should be ignored by Dovecot. If the first message of the mailbox has X-IMAP: header, it's skipped. I've really no idea why these would only now be visible with v1.1. Perhaps v1.0 had written buggy headers and v1.1 is more strict? I don't really know.. Can you reproduce this in any way (so that the client even sees it)?
no, unfortunately not. i tried to copy internal mesages to newly created mboxes and played a little bit but could not reproduce this behavior. ok, its annoying but explainable to users. as long it is a one time feature i can live with it... ;)
interesting is that those old internal-message (mbox created 2006|2007 etc.) is still unchanged in empty mbox even when it was deliverd a thousend times...
more problematical is my still occuring issue with kills/craches in imap-section.
Looks like some kind of a locking problem.
it appears directly when reading some messages using imap-protokoll. a lot of mesages are ok but one is creating this line in maillog
Jul 14 15:38:48 servername dovecot: IMAP(loginname): Next message unexpectedly lost from 6693538
this happens on all my dovecot 1.1.1 servers with some messages in imap-server.
Can you get a gdb backtrace from this crash? See http://dovecot.org/bugreport.html
hmm, unfortunately not. i edited dovecot.conf for debuginfo which is written in maillog. but i do not find any coredump. :(
this is dovecot -n
# 1.1.1: /etc/dovecot.conf protocols: imap imaps pop3 pop3s ssl_ca_file: /path/path/*.myservername.com.bundle.crt ssl_cert_file: /path/path/*.myservername.com.crt ssl_key_file: /path/path/*.myservername.com.key disable_plaintext_auth: no 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 login_greeting: myservername.com mailserver ready. login_process_per_connection: no login_processes_count: 1 max_mail_processes: 100 verbose_proctitle: yes mail_location: mbox:~/mail:INBOX=/var/spool/mail/%u mail_cache_min_mail_count: 30 mail_debug: yes mbox_read_locks: dotlock mbox_very_dirty_syncs: yes mail_drop_priv_before_exec: 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): mail_log mail_plugins(imap): mail_log mail_plugins(pop3): 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_client_workarounds(default): outlook-idle netscape-eoh tb-extra-mailbox-sep delay-newmail imap_client_workarounds(imap): outlook-idle netscape-eoh tb-extra-mailbox-sep delay-newmail imap_client_workarounds(pop3): pop3_client_workarounds(default): pop3_client_workarounds(imap): pop3_client_workarounds(pop3): oe-ns-eoh outlook-no-nuls auth default: verbose: yes passdb: driver: shadow userdb: driver: passwd
Jul 4 13:41:32 servername dovecot: IMAP(loginname): Next message unexpectedly lost from 156715931 Jul 4 13:41:32 servername dovecot: Panic: IMAP(loginname): file message-parser.c: line 770 (message_parser_parse_next_block): assertion failed: (ctx->input->eof || ctx->input->closed || ctx->input->stream_errno != 0 || ctx->broken)
Probably related to the message changing unexpectedly..
it happens every day. current example, this is a complete sequenz:
Jul 14 16:08:31 servername dovecot: imap-login: Login: user=<thisuser>, method=PLAIN, rip=85.13.133.104, lip=85.13.133.104, secured Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Loading modules from directory: /usr/lib/dovecot/imap Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Module loaded: /usr/lib/dovecot/imap/lib20_mail_log_plugin.so Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Effective uid=504, gid=501, home=/home/popuser/thisuser Jul 14 16:08:31 servername dovecot: IMAP(thisuser): mbox: data=/home/popuser/thisuser/mail:INBOX=/var/spool/mail/thisuser Jul 14 16:08:31 servername dovecot: IMAP(thisuser): fs: root=/home/popuser/thisuser/mail, index=, control=, inbox=/var/spool/mail/thisuser Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Next message unexpectedly lost from 6693538 Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Next message unexpectedly lost from 6693538 Jul 14 16:08:31 servername dovecot: Panic: IMAP(thisuser): file message-parser.c: line 770 (message_parser_parse_next_block): assertion failed: (ctx->input->eof || ctx->input->closed || ctx->input->stream_errno != 0 || ctx->broken) Jul 14 16:08:31 servername dovecot: IMAP(thisuser): Raw backtrace: imap [0x80c2cf0] -> imap [0x80c2d4a] -> imap [0x80c265c] -> imap(message_parser_parse_body+0) [0x80bbfa0] -> imap(index_mail_cache_parse_continue+0x22) [0x8087172] -> imap [0x8070441] -> imap(mbox_save_continue+0x2d) [0x80704dd] -> imap(mail_storage_co py+0xe4) [0x8091684] -> /usr/lib/dovecot/imap/lib20_mail_log_plugin.so [0xb7f65d1a] -> imap(cmd_copy+0x1d2) [0x805a1c2] -> imap [0x805edfc] -> imap [0x805eea5 ] -> imap [0x805f655] -> imap(client_input+0x5e) [0x805f86e] -> imap(io_loop_handler_run+0x100) [0x80ca590] -> imap(io_loop_run+0x28) [0x80c9738] -> imap(main +0x46b) [0x806736b] -> /lib/libc.so.6(__libc_start_main+0xdc) [0xb7e4f87c] -> imap [0x8059211] Jul 14 16:08:31 servername dovecot: child 7162 (imap) killed with signal 6
lock_method = flock
See if it makes any difference to change this to fcntl. changed to fcntl, no difference.
How do you deliver new mails to the mbox? mails that arrive will be deliverd by procmail, relevant line in /etc/postfix/main.cf is:
mailbox_command = /usr/bin/procmail :)
mbox_lazy_writes = no
Why? This makes performance worse. hmm, may be a kind of historical relict by my forerunner, now it is changed. thanks.
System is suse 10.1
What filesystem? we use xfs
hmm, what can i do now? i wonder why no coredump is created to be more helpful for debugging. i did follow the bugreport.html Hope there is some further help, dovecot is a great software which we want to use further on.
Thank you Andre