For quite some time I have seen dovecot imap exit with a sig11 without any other error message, but usually with the frequency of between once per week and once per day (per server). A few weeks ago I finally enabled core dumping with debug symbols and it seemed to happen less often. I finally caught a coredump that wasn't overwritten. I have no idea what on the client end may cause it, it has happened to myself too.
dovecot 1.11b16 FreeBSD 6.3 amd64 Maildir on NFS # 1.1.beta16: /usr/local/etc/dovecot.conf ssl_cert_file: /usr/local/etc/apache22/ssl/mail.pem ssl_key_file: /usr/local/etc/apache22/ssl/mail.pem login_dir: /var/run/dovecot/login login_executable: /usr/local/libexec/dovecot/imap-login mail_max_userip_connections: 25 verbose_proctitle: yes first_valid_uid: 1000 first_valid_gid: 1000 mail_extra_groups: postlocal mail_location: maildir:%h/Maildir:CONTROL=%h/Maildir/dovecot/private/control:INDEX=%h/Maildir/dovecot/private/indexes mmap_disable: yes mail_nfs_storage: yes mail_nfs_index: yes mail_drop_priv_before_exec: yes mail_plugins: acl fts fts_squat mail_log_max_lines_per_sec: 0 imap_client_workarounds: delay-newmail netscape-eoh tb-extra-mailbox-sep namespace: type: private separator: / inbox: yes list: yes subscriptions: yes namespace: type: private separator: / prefix: mail/ hidden: yes subscriptions: yes namespace: type: private separator: / prefix: Mail/ hidden: yes subscriptions: yes namespace: type: public separator: / prefix: #shared/decs/ location: maildir:/egr/mail/shared/decs:CONTROL=%h/Maildir/dovecot/public/control/decs:INDEX=%h/Maildir/dovecot/public/indexes/decs list: yes subscriptions: yes auth default: passdb: driver: pam userdb: driver: passwd args: system_user= socket: type: listen client: path: /var/spool/postfix/private/auth mode: 384 user: postfix group: postfix plugin: acl: vfile:/usr/local/etc/dovecot-acls:cache_secs=10 fts: squat
# gdb /usr/local/libexec/dovecot/imap imap.53439.hill.core GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd"... Core was generated by `imap'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/local/lib/libiconv.so.3...done. Loaded symbols for /usr/local/lib/libiconv.so.3 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /usr/local/lib/dovecot/imap/lib01_acl_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/imap/lib01_acl_plugin.so Reading symbols from /usr/local/lib/dovecot/imap/lib20_fts_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/imap/lib20_fts_plugin.so Reading symbols from /usr/local/lib/dovecot/imap/lib21_fts_squat_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/imap/lib21_fts_squat_plugin.so Reading symbols from /libexec/ld-elf.so.1...done. Loaded symbols for /libexec/ld-elf.so.1 #0 0x0000000000435edd in maildir_uidlist_iter_next_rec (ctx=0x647120, rec_r=0x7fffffffdeb0) at maildir-uidlist.c:1522 1522 maildir-uidlist.c: No such file or directory. in maildir-uidlist.c #0 0x0000000000435edd in maildir_uidlist_iter_next_rec (ctx=0x647120, rec_r=0x7fffffffdeb0) at maildir-uidlist.c:1522 rec = (struct maildir_uidlist_rec *) 0x0 __PRETTY_FUNCTION__ = "maildir_uidlist_iter_next_rec" #1 0x000000000043461a in maildir_uidlist_write_fd (uidlist=0x64a000, fd=9, path=0x612a80 "/home/batesst/Maildir/dovecot/private/control/.INBOX/dovecot-uidlist", first_idx=56, file_size_r=0x7fffffffdf30) at maildir-uidlist.c:936 storage = (struct mail_storage *) 0x60a848 iter = (struct maildir_uidlist_iter_ctx *) 0x647120 output = (struct ostream *) 0x64a268 rec = (struct maildir_uidlist_rec *) 0x0 str = (string_t *) 0x602060 p = (const unsigned char *) 0x7fffffffdee0 "\200*a" len = 0 ret = 6295912 __PRETTY_FUNCTION__ = "maildir_uidlist_write_fd" #2 0x0000000000434ce4 in maildir_uidlist_sync_update (ctx=0x665040) at maildir-uidlist.c:1095 uidlist = (struct maildir_uidlist *) 0x64a000 file_size = 227633266741 __PRETTY_FUNCTION__ = "maildir_uidlist_sync_update" #3 0x0000000000435b9f in maildir_uidlist_sync_deinit (_ctx=0x601198) at maildir-uidlist.c:1448 _data_stack_cur_id = 5 ctx = (struct maildir_uidlist_sync_ctx *) 0x665040 ret = 0 __PRETTY_FUNCTION__ = "maildir_uidlist_sync_deinit" #4 0x0000000000430bab in maildir_sync_context (ctx=0x601168, forced=false, find_uid=0x0, lost_files_r=0x7fffffffdfef) at maildir-sync.c:836 sync_flags = MAILDIR_UIDLIST_SYNC_PARTIAL flags = 4294959056 new_changed = true cur_changed = false ret = 1 __PRETTY_FUNCTION__ = "maildir_sync_context" #5 0x0000000000430d11 in maildir_storage_sync_init (box=0x63e048, flags=65) at maildir-sync.c:881 _data_stack_cur_id = 4 mbox = (struct maildir_mailbox *) 0x63e048 ctx = (struct maildir_sync_context *) 0x601168 lost_files = false ret = 0 __PRETTY_FUNCTION__ = "maildir_storage_sync_init" #6 0x000000000046b890 in mailbox_sync_init (box=0x63e048, flags=65) at mail-storage.c:509 No locals. #7 0x000000000046b949 in mailbox_sync (box=0x63e048, flags=65, status_items=111, status_r=0x7fffffffe0a0) at mail-storage.c:539 ctx = (struct mailbox_sync_context *) 0x60a848 sync_rec = {seq1 = 4294959216, seq2 = 0, type = 6545480} #8 0x0000000000419627 in cmd_select_full (cmd=0x61e048, readonly=false) at cmd-select.c:39 client = (struct client *) 0x60d200 storage = (struct mail_storage *) 0x60a848 box = (struct mailbox *) 0x63e048 status = {messages = 4294959328, recent = 32767, unseen = 6343088, uidvalidity = 0, uidnext = 24, first_unseen_seq = 0, keywords = 0x41ca28} mailbox = 0x4cea7b "INBOX" #9 0x000000000041978a in cmd_select (cmd=0x61e048) at cmd-select.c:87 No locals. #10 0x000000000041bf72 in client_command_input (cmd=0x61e048) at client.c:546 client = (struct client *) 0x60d200 command = (struct command *) 0x7 __PRETTY_FUNCTION__ = "client_command_input" #11 0x000000000041c17b in client_command_input (cmd=0x61e048) at client.c:595 client = (struct client *) 0x60d200 command = (struct command *) 0x60c9b0 __PRETTY_FUNCTION__ = "client_command_input" #12 0x000000000041c2a3 in client_handle_next_command (client=0x60d200, remove_io_r=0x7fffffffe1f6) at client.c:636 size = 19 #13 0x000000000041c2f0 in client_handle_input (client=0x60d200) at client.c:646 _data_stack_cur_id = 3 ret = false remove_io = false handled_commands = false #14 0x000000000041c469 in client_input (client=0x60d200) at client.c:691 cmd = (struct client_command_context *) 0x20060b0e8 output = (struct ostream *) 0x60d368 bytes = 19 __PRETTY_FUNCTION__ = "client_input" #15 0x00000000004b4076 in io_loop_handler_run (ioloop=0x600240) at ioloop-kqueue.c:149 ctx = (struct ioloop_handler_context *) 0x60b0e0 events = (struct kevent *) 0x60f000 event = (const struct kevent *) 0x60f000 tv = {tv_sec = 1799, tv_usec = 999708} ts = {tv_sec = 1799, tv_nsec = 999708000} io = (struct io_file *) 0x600940 events_count = 3 t_id = 2 ret = 1 i = 0 __PRETTY_FUNCTION__ = "io_loop_handler_run" #16 0x00000000004b3190 in io_loop_run (ioloop=0x600240) at ioloop.c:301 No locals. #17 0x0000000000426c0e in main (argc=3, argv=0x7fffffffe340, envp=0x7fffffffe360) at main.c:293 No locals. (gdb)