[Dovecot] assertion failed: (uidmap[src].real_uid == uid)
Hi all,
Does anyone have an idea what could cause the below error?
Dec 31 17:03:46 bobodioulasso dovecot: imap(bla@bla.org): Panic: file virtual-sync.c: line 542 (virtual_sync_mailbox_box_remove): assertion failed: (uidmap[src].real_uid == uid) Dec 31 17:03:46 bobodioulasso dovecot: imap(bla@bla.org): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x3c14a) [0x7fe492d1314a] -> /usr/lib/dovecot/libdovecot.so.0(+0x3c18e) [0x7fe492d1318e] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7fe492cea81a] -> /usr/lib/dovecot/modules/lib20_virtual_plugin.so(+0x9271) [0x7fe49169c271] -> /usr/lib/dovecot/modules/lib20_virtual_plugin.so(virtual_storage_sync_init+0x160d) [0x7fe49169dbcd] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_sync_init+0x33) [0x7fe492fccd43] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_sync+0x27) [0x7fe492fcce67] -> dovecot/imap(cmd_close+0x71) [0x7fe493484951] -> dovecot/imap(command_exec+0x3c) [0x7fe49348c29c] -> dovecot/imap(+0x112ee) [0x7fe49348b2ee] -> dovecot/imap(+0x1139a) [0x7fe49348b39a] -> dovecot/imap(client_handle_input+0x11d) [0x7fe49348b5fd] -> dovecot/imap(client_input+0x65) [0x7fe49348bef5] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x36) [0x7fe492d20006] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0xa7) [0x7fe492d20cb7] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x28) [0x7fe492d1fa18] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7fe492d0c463] -> dovecot/imap(main+0x297) [0x7fe4934838c7] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7fe49293976d] -> dovecot/imap(+0x9a41) [0x7fe493483a41] Dec 31 17:03:46 bobodioulasso dovecot: imap(bla@bla.org): Fatal: master: service(imap): child 32250 killed with signal 6 (core dumps disabled)
The error only occurs for a single user on the system. This user uses Apple Mail client.
I'm not subscribed to the Dovecot mailing list, so please cc: me on replies.
Regards, Chris.
# dovecot -n
# 2.1.7: /etc/dovecot/dovecot.conf # OS: Linux 3.2.0-32-generic x86_64 Ubuntu 12.10 ext3 auth_verbose = yes log_timestamp = "%Y-%m-%d %H:%M:%S " mail_location = maildir:/var/vmail/%u mail_privileged_group = mail maildir_stat_dirs = yes 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 = maildir:/var/vmail/%u prefix = separator = . } namespace { location = virtual:/var/vmail/virtual prefix = virtual. separator = . } passdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } plugin { fts = squat fts_squat = partial=4 full=10 } protocols = imap service auth { unix_listener /var/spool/postfix/private/auth-client { group = postfix mode = 0660 user = postfix } unix_listener auth-master { group = vmail mode = 0600 user = vmail } unix_listener auth-userdb { group = vmail mode = 0600 user = vmail } } service imap-login { inet_listener imap { address = localhost port = 143 } inet_listener imaps { address = * port = 993 } } ssl_cert =
On Thu, 2013-01-03 at 19:13 +0800, Chris Vanden Berghe wrote:
Hi all,
Does anyone have an idea what could cause the below error?
Dec 31 17:03:46 bobodioulasso dovecot: imap(bla@bla.org): Panic: file virtual-sync.c: line 542 (virtual_sync_mailbox_box_remove): assertion failed: (uidmap[src].real_uid == uid)
Looks like a bug in virtual plugin. Those are a bit difficult to debug though. It would be very helpful if I could reproduce this myself. I'd need some files from the user's mailbox for that (not the mail files, so nothing sensitive). But..:
The error only occurs for a single user on the system. This user uses Apple Mail client. .. namespace { inbox = yes location = maildir:/var/vmail/%u prefix = separator = . } namespace { location = virtual:/var/vmail/virtual prefix = virtual. separator = . }
This isn't a good setup. Now each user recreates the entire virtual mailbox every time it's opened. Maybe the bug is related to that. Use instead something like:
namespace { location = virtual:/var/vmail/virtual:INDEX=/var/vmail/%u/virtual
participants (2)
-
Chris Vanden Berghe
-
Timo Sirainen