[Dovecot] exim/kmail vs. dovecot
I am using exim via dovecot_deliver to store messages in Maildir in my $HOME. I am using kmail to retrieve stuff. Unfortunately, something in my data crashes dovecot.
I was using 1.0.rc14 from opensuse, but downloaded and installed 1.0.8 from the site.
Here is the crash:
Dec 5 18:05:09 h743107 dovecot: IMAP(kris): file mail-index-transaction.c: line 629 (mail_index_update_flags_range): assertion failed: (seq1 <= seq2 && seq1 > 0) Dec 5 18:05:09 h743107 dovecot: child 13896 (imap) killed with signal 6 Dec 5 18:05:09 h743107 dovecot: IMAP(kris): Raw backtrace: imap [0x8006cf7d] -> imap [0x8006ce58] -> imap(mail_index_update_flags_range+0x194) [0x8004d034] -> imap(mail_index_sync_begin+0x5c9) [0x8004fb79] -> imap(maildir_sync_index_begin+0x61) [0x80021c71] -> imap [0x8002350a] -> imap(maildir_storage_sync_init+0x56) [0x80023646] -> imap(mailbox_sync_init+0x16) [0x8005d566] -> imap(imap_sync_nonselected+0x28) [0x8001b838] -> imap(_cmd_select_full+0xd7) [0x80012c47] -> imap(cmd_select+0x25) [0x80012e25] -> imap [0x800143ea] -> imap[0x8001446c] -> imap(_client_input+0x7d) [0x80014bcd] ->imap(io_loop_handler_run+0x127) [0x80073987]-> imap(io_loop_run+0x28) [0x80072ac8] -> imap(main+0x518) [0x8001d898] -> /lib/libc.so.6(__libc_start_main+0xdc) [0xb7e8d02c] -> imap[0x8000f0c1]
I took the liberty to syslog() the seq numbers before the assert and indeed
h743107:/etc/dovecot # grep "imap: seq1" /var/log/messages | head -3 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 h743107:/etc/dovecot # grep "imap: seq1" /var/log/messages | awk '($9 < $7) { print }' Dec 5 18:30:42 h743107 imap: seq1 28 seq2 16 Dec 5 18:32:43 h743107 imap: seq1 28 seq2 16
What exactly is broken here and how can I fix that?
Kris
-- Kristian =?iso-8859-15?q?K=F6hntopp?= kris@xn--khntopp-90a.de
Kristian Koehntopp wrote:
I am using exim via dovecot_deliver to store messages in Maildir in my $HOME. I am using kmail to retrieve stuff. Unfortunately, something in my data crashes dovecot.
I was using 1.0.rc14 from opensuse, but downloaded and installed 1.0.8 from the site.
Kmail doesn't use a proper version of Maildir internally, it also assumes that it's the only program accessing the files and so play fast and loose. Not only this but it also has its own index files and gets extremely confused if things change underneath it. It's really a nasty client underneath the skin.
I would suggest that you deliver your e-mail elsewhere and have kmail access the folders via IMAP, even though it's not very nice to do so. (Kmail will overload the IMAP server if you're not careful.)
I can tell you this from experience as I used Kmail for a number of years in a production environment until quite recently.
Steve
Computer Systems Administrator, E-Mail:-steve@earth.ox.ac.uk Department of Earth Sciences, Tel:- +44 (0)1865 282110 University of Oxford, Parks Road, Oxford, UK. Fax:- +44 (0)1865 272072
On Thursday, 6. December 2007 11:01:40 Stephen Usher wrote:
Kristian Koehntopp wrote:
I am using exim via dovecot_deliver to store messages in Maildir in my $HOME. I am using kmail to retrieve stuff. Unfortunately, something in my data crashes dovecot.
I was using 1.0.rc14 from opensuse, but downloaded and installed 1.0.8 from the site.
Kmail doesn't use a proper version of Maildir internally, it also assumes that it's the only program accessing the files and so play fast and loose.
I am using (d)IMAP only with kmail. The kmail is on my laptop, the dovecot is elsewhere (a strato dedicated server in Berlin).
Kris
-- Kristian =?iso-8859-15?q?K=F6hntopp?= kris@xn--khntopp-90a.de
I have found getmail+sieve works a lot nicer. Then just use kmail as a IMAP client.
On Wed, 5 Dec 2007 18:45:22 +0100 Kristian Koehntopp kris@koehntopp.de wrote:
I am using exim via dovecot_deliver to store messages in Maildir in my $HOME. I am using kmail to retrieve stuff. Unfortunately, something in my data crashes dovecot.
I was using 1.0.rc14 from opensuse, but downloaded and installed 1.0.8 from the site.
Here is the crash:
Dec 5 18:05:09 h743107 dovecot: IMAP(kris): file mail-index-transaction.c: line 629 (mail_index_update_flags_range): assertion failed: (seq1 <= seq2 && seq1 > 0) Dec 5 18:05:09 h743107 dovecot: child 13896 (imap) killed with signal 6 Dec 5 18:05:09 h743107 dovecot: IMAP(kris): Raw backtrace: imap [0x8006cf7d] -> imap [0x8006ce58] -> imap(mail_index_update_flags_range+0x194) [0x8004d034] -> imap(mail_index_sync_begin+0x5c9) [0x8004fb79] -> imap(maildir_sync_index_begin+0x61) [0x80021c71] -> imap [0x8002350a] -> imap(maildir_storage_sync_init+0x56) [0x80023646] -> imap(mailbox_sync_init+0x16) [0x8005d566] -> imap(imap_sync_nonselected+0x28) [0x8001b838] -> imap(_cmd_select_full+0xd7) [0x80012c47] -> imap(cmd_select+0x25) [0x80012e25] -> imap [0x800143ea] -> imap[0x8001446c] -> imap(_client_input+0x7d) [0x80014bcd] ->imap(io_loop_handler_run+0x127) [0x80073987]-> imap(io_loop_run+0x28) [0x80072ac8] -> imap(main+0x518) [0x8001d898] -> /lib/libc.so.6(__libc_start_main+0xdc) [0xb7e8d02c] -> imap[0x8000f0c1]
I took the liberty to syslog() the seq numbers before the assert and indeed
h743107:/etc/dovecot # grep "imap: seq1" /var/log/messages | head -3 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 Dec 5 18:30:18 h743107 imap: seq1 1 seq2 1 h743107:/etc/dovecot # grep "imap: seq1" /var/log/messages | awk '($9 < $7) { print }' Dec 5 18:30:42 h743107 imap: seq1 28 seq2 16 Dec 5 18:32:43 h743107 imap: seq1 28 seq2 16
What exactly is broken here and how can I fix that?
Kris
-- Kristian =?iso-8859-15?q?K=F6hntopp?= kris@xn--khntopp-90a.de
participants (3)
-
Kristian Koehntopp
-
Stephen Usher
-
Zane C.B.