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 at 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 at 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
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 at 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 at xn--khntopp-90a.de>