[Dovecot] Dovecot 2.0 beta imap session crash report
System config: RHEL 5.3, 64 bit Dovecot 2.0 beta (changeset "2882650531e0", 10 days old) installed with lda and lmtp
Symptom: IMAP session crashed when I tried to delete a non-exist mailbox, e.g., Trash in my test [root@mail4a LocalIntegrationTest]# telnet localhost 143
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN] Dovecot ready. a login testmail4a2@dev.p4nt5.com xxxxxx a OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH QUOTA] Logged in a delete Trash Connection closed by foreign host.
Error log: Jan 12 12:33:26 mail4a dovecot: imap(testmail4a2@dev.p4nt5.com): maildir++: root=/data/mail/de/dev.p4nt5.com/te/testmail4a2, index=, control=, inbox= Jan 12 12:33:31 mail4a dovecot: imap(testmail4a2@dev.p4nt5.com): open() failed with index file (null): Bad address Jan 12 12:33:31 mail4a dovecot: master: service(imap): child 20867 killed with signal 11 (core dumps disabled)
How to reproduce: Delete a non-exist mailbox after login
Thanks, Wenjie
On 12.1.2010, at 20.51, wenjie zheng wrote:
Jan 12 12:33:31 mail4a dovecot: imap(testmail4a2@dev.p4nt5.com): open() failed with index file (null): Bad address Jan 12 12:33:31 mail4a dovecot: master: service(imap): child 20867 killed with signal 11 (core dumps disabled)
How to reproduce: Delete a non-exist mailbox after login
Did you have some plugins enabled? It doesn't crash with me.
Can you get gdb backtrace? "core dumps disabled" means you need to run "ulimit -c unlimited" before starting Dovecot (and some init.d script might override it so might not be that simple). Anyway, after you get a core, http://dovecot.org/bugreport.html explains how to get backtrace.
On Wed, Jan 13, 2010 at 3:07 AM, Timo Sirainen <tss@iki.fi> wrote:
On 12.1.2010, at 20.51, wenjie zheng wrote:
Jan 12 12:33:31 mail4a dovecot: imap(testmail4a2@dev.p4nt5.com): open() failed with index file (null): Bad address Jan 12 12:33:31 mail4a dovecot: master: service(imap): child 20867 killed with signal 11 (core dumps disabled)
How to reproduce: Delete a non-exist mailbox after login
Can you get gdb backtrace?
I was able to get the following backtrace info today when I tried to delete a non-exist Trash from a test account.
Program received signal SIGSEGV, Segmentation fault. mail_transaction_log_view_open (log=0x843e690) at mail-transaction-log-view.c:18 18 mail-transaction-log-view.c: No such file or directory. in mail-transaction-log-view.c (gdb) bt #0 mail_transaction_log_view_open (log=0x843e690) at mail-transaction-log-view.c:18 #1 0x00000035f8c4c4d5 in mail_index_view_open_with_map (index=0x8426370, map=0x8470a30) at mail-index-view.c:595 #2 0x00000035f8c75504 in maildir_uidlist_recreate (uidlist=0x843e790) at maildir-uidlist.c:1318 #3 0x00000035f8c73f63 in maildir_uidlist_update (uidlist=0x843e790) at maildir-uidlist.c:1459 #4 0x00000035f8c74911 in maildir_uidlist_refresh (uidlist=0x843e790) at maildir-uidlist.c:940 #5 0x00000035f8c73ed7 in maildir_uidlist_lock_timeout (uidlist=0x843e790, nonblock=<value optimized out>, refresh=true, refresh_when_locked=<value optimized out>) at maildir-uidlist.c:199 #6 0x00000035f8c79d2f in maildir_mailbox_open_existing (box=0x843ce58) at maildir-storage.c:399 #7 0x00000035f8c7ab11 in maildir_mailbox_open (box=0x843ce58) at maildir-storage.c:449 #8 0x00000035f8c2a27f in mailbox_open (box=0x843ce58) at mail-storage.c:481 #9 0x00002b8093933814 in quota_mailbox_list_delete (list=0x8435d78, name=0x843a770 "Trash") at quota-storage.c:428 #10 0x00002b8093d3d012 in notify_mailbox_list_delete (list=0x8435d78, name=0x843a770 "Trash") at notify-storage.c:225 #11 0x0000000000409050 in cmd_delete (cmd=0x8436cb8) at cmd-delete.c:37 #12 0x000000000040e95c in client_command_input (cmd=0x8436cb8) at imap-client.c:644 #13 0x000000000040ea12 in client_command_input (cmd=0x8436cb8) at imap-client.c:694 #14 0x000000000040eb5f in client_handle_input (client=0x84322f0) at imap-client.c:735 #15 0x000000000040f512 in client_input (client=0x84322f0) at imap-client.c:786 #16 0x00000035f883c778 in io_loop_handler_run (ioloop=<value optimized out>) at ioloop-epoll.c:208 #17 0x00000035f883b56d in io_loop_run (ioloop=0x84235b0) at ioloop.c:350 #18 0x00000035f882cc63 in master_service_run (service=0x8423490, callback=0x40) at master-service.c:473 #19 0x0000000000416d18 in main (argc=1, argv=0x8423370) at main.c:307 (gdb) c Continuing.
Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists.
On 19.1.2010, at 22.15, wenjie zheng wrote:
#0 mail_transaction_log_view_open (log=0x843e690) at mail-transaction-log-view.c:18 #1 0x00000035f8c4c4d5 in mail_index_view_open_with_map (index=0x8426370, map=0x8470a30) at mail-index-view.c:595 #2 0x00000035f8c75504 in maildir_uidlist_recreate (uidlist=0x843e790) at maildir-uidlist.c:1318
participants (2)
-
Timo Sirainen
-
wenjie zheng