[Dovecot] Problems converting to maildir with dsync in 2.0.6
Nicholas Riley
njriley at illinois.edu
Fri Oct 22 04:30:35 EEST 2010
I'm trying to convert from an old Dovecot (1.0.15) and mbox to a new
Dovecot and maildir. I'm running into several problems with dsync which
are causing my mboxes not to convert.
If I use LAYOUT=fs (as I'd prefer) I get an error because I have a
mailbox called "subscriptions", and none of my messages convert. Is
there a way to get dovecot to put its own metadata in dotfiles instead?
(I guess I can rename my mailbox too :-)
% dsync mirror mbox:~/Mail
dsync(nriley): Error: read() failed with subscription file
/home/nriley/Maildir/subscriptions: Is a directory
dsync(nriley): Error: Can't update subscription +/INBOX: Internal error
occurred. Refer to server log for more information. [2010-10-21 20:17:55]
[...]
Also, what "server log" is it referring to above?
So I tried without LAYOUT=fs, and dsync successfully converts some
mailboxes, then crashes:
% dsync mirror mbox:~/Mail
dsync(nriley): Error: Maildir: 6ef533cd4cdb1fd454b0226bfc851bb3:2,
changed UID 1846529 -> 1846531
dsync(nriley): Panic: file maildir-save.c: line 892
(maildir_save_sync_uidlist): assertion failed: (ret > 0)
dsync(nriley): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0
[0xb7ea21f1] ->
/usr/lib/dovecot/libdovecot.so.0(default_fatal_handler+0x47)
[0xb7ea2317] -> /usr/lib/dovecot/libdovecot.so.0(i_error+0) [0xb7ea2544]
->
/usr/lib/dovecot/libdovecot-storage.so.0(maildir_transaction_save_commit_
pre+0x858) [0xb7f2ab58] -> /usr/lib/dovecot/libdovecot-storage.so.0
[0xb7f2501f] ->
/usr/lib/dovecot/libdovecot-storage.so.0(mail_index_transaction_commit_fu
ll+0x85) [0xb7f67eb5] ->
/usr/lib/dovecot/libdovecot-storage.so.0(index_transaction_commit+0x94)
[0xb7f24c14] ->
/usr/lib/dovecot/libdovecot-storage.so.0(mailbox_transaction_commit_get_c
hanges+0x42) [0xb7efeaa2] -> /usr/bin/dsync [0x8056ed2] ->
/usr/bin/dsync [0x80570f0] ->
/usr/bin/dsync(dsync_worker_select_mailbox+0x2e) [0x8055b2e] ->
/usr/bin/dsync [0x80507e6] -> /usr/bin/dsync [0x8050a3b] ->
/usr/bin/dsync(dsync_brain_msg_sync_new_msgs+0x12) [0x8050c12] ->
/usr/bin/dsync(dsync_brain_msg_sync_more+0x2e1) [0x8050261] ->
/usr/bin/dsync(dsync_brain_sync+0x309) [0x804e949] -> /usr/bin/dsync
[0x804f953] -> /usr/bin/dsync(dsync_brain_sync+0x72e) [0x804ed6e] ->
/usr/bin/dsync [0x804f7d0] -> /usr/bin/dsync(dsync_brain_sync+0x55d)
[0x804eb9d] -> /usr/bin/dsync(dsync_brain_sync_all+0x18) [0x804f668] ->
/usr/bin/dsync(main+0x5a1) [0x804da51] ->
/lib/libc.so.6(__libc_start_main+0xe5) [0xb7d29455] -> /usr/bin/dsync
[0x804d2e1]
[1] 30528 abort dsync mirror mbox:~/Mail
I tried running it in GDB but that crashed GDB, so hopefully the above
info is OK...
% gdb --args dsync mirror mbox:~/Mail
(gdb) run
Starting program: /usr/bin/dsync mirror mbox:\~/Mail
[Thread debugging using libthread_db enabled]
[New process 30652]
Executing new program: /usr/bin/doveconf
warning: Cannot initialize thread debugging library: generic error
warning: Cannot initialize thread debugging library: generic error
warning: Cannot initialize thread debugging library: generic error
warning: Cannot initialize thread debugging library: generic error
[New process 30652]
[Thread debugging using libthread_db enabled]
[1] 30651 segmentation fault gdb -q --args dsync mirror mbox:~/Mail
I'm using the Debian packages from rename-it.nl. Here is doveconf -n
output:
# 2.0.6 (aaca506ea33b): /etc/dovecot/dovecot.conf
# OS: Linux 2.6.18.8-linode22 i686 Debian 5.0.6
mail_location = maildir:~/Maildir:INBOX=~/Maildir/INBOX
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date
namespace {
inbox = yes
location =
prefix =
separator = /
}
passdb {
driver = pam
}
plugin {
sieve = ~/.dovecot.sieve
sieve_dir = ~/sieve
}
protocols = imap
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
driver = passwd
}
--
Nicholas Riley <njriley at illinois.edu>
More information about the dovecot
mailing list