I can't really see how this could happen.. You can reproduce this every time? Does it matter what the source or destination mailboxes are?
I can reproduce it every time I save a message to any folder collection subfolder. I haven't tried yet to a non-subfolder collection.
Could you show output of these commands in gdb:
(gdb) p *map $1 = {refcount = 537733560, hdr = {major_version = 4 '\004', minor_version = 0 '\0', base_header_size = 0, header_size = 0, record_size = 806526976, compat_data = "\001\0\0", indexid = 191112, flags = 0, uid_validity = 191112, next_uid = 0, messages_count = 0, recent_messages_count = 0, seen_messages_count = 537585472, deleted_messages_count = 1, first_recent_uid_lowwater = 0, first_unseen_uid_lowwater = 0, first_deleted_uid_lowwater = 0, log_file_seq = 0, log_file_int_offset = 0, log_file_ext_offset = 0, sync_size = 4832625920, sync_stamp = 537668480, day_stamp = 1, day_first_uid = {537667072, 1, 537667072, 1, 0, 0, 0, 0}}, hdr_base = 0x0, records = 0x3c, records_count = 60, extension_pool = 0x0, extensions = { buffer = 0x0, element_size = 0}, ext_id_map = {buffer = 0x120091ab8, element_size = 60}, mmap_base = 0x3c, mmap_size = 0, mmap_used_size = 0, buffer = 0x0, hdr_copy_buf = 0x3e2a, keyword_idx_map = { buffer = 0x1200c5620, element_size = 4832646784}, write_to_disk = 0} (gdb) p *map.ext_id_map Structure has no component named operator*. (gdb) p *map.ext_id_map.buffer $2 = {data = 0x6b636f6c77656e2e, used = 7162254444802766080}
Program received signal SIGABRT, Aborted. 0x130247908 in kill () from /lib/libc.so.5
SIGABRT? I was expecting SIGSEGV. Does it write something to log? Is the backtrace different after the SIGABRT?
Here's from /var/log/messages:
Jun 7 18:44:36 aurora dovecot: execv(libexec/dovecot/dovecot-auth) failed: No such file or directory Jun 7 18:44:36 aurora dovecot: execv(libexec/dovecot/imap-login) failed: No such file or directory
You can find my source tree, including my config.h and dovecot.conf, at this address:
http://aurora.aaronsen.com/dovecot/
Doug