Re: [Dovecot] coredump in dovecot 2.0.11
This is it:
[root@server00 spool]# service dovecot start Starting Dovecot Imap: [ OK ] [root@isteren spool]# gdb /usr/libexec/dovecot/imap core GNU gdb (GDB) Fedora (7.2-46.fc14) Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-redhat-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/libexec/dovecot/imap...Reading symbols from /usr/lib/debug/usr/libexec/dovecot/imap.debug...done. done. /var/spool/core: No such file or directory. (gdb) bt full No stack. (gdb) q
Should i create the /var/spool/core (file or directory) first?
--- On Sat, 4/9/11, Timo Sirainen <> wrote:
Subject: Re: [Dovecot] coredump in dovecot 2.0.11 Date: Saturday, April 9, 2011, 12:29 PM I'm guessing it either couldn't open the binary file or the core file.. Even without debug symbols it should print something. What's the full gdb command you're giving and its output?
On 9.4.2011, at 13.26, k b wrote:
apparently i cannot get it right, (gdb) bt full says: No stack.
i did install the debuginfo files debuginfo-install dovecot-2.0.11-1.fc14.i686
but gdb still says No stack.
--- On Sat, 4/9/11, Timo Sirainen <tss@iki.fi> wrote:
Subject: Re: [Dovecot] coredump in dovecot 2.0.11 Cc: dovecot@dovecot.org Date: Saturday, April 9, 2011, 9:01 AM On 9.4.2011, at 9.37, k b wrote:
I can post the coredump but i will have to clean it first as i can see it contains a few emails. would it help to post the coredump or shuould i skip that?
The core file itself isn't useful, because it's highly system specific. Posting a gdb backtrace from it would be very useful though. So basically:
gdb /usr/libexec/dovecot/imap core bt full
On Tue, 2011-04-12 at 07:06 +0100, k b wrote:
[root@isteren spool]# gdb /usr/libexec/dovecot/imap core /var/spool/core: No such file or directory. Should i create the /var/spool/core (file or directory) first?
The core parameter is a path to the core file created by the crash. The one shown by this log message:
Apr 9 08:23:10 server00 abrt[28509]: saved core dump of pid 28508 (/usr/libexec/dovecot/imap) to /var/spool/abrt/ccpp-1302330190-28508.new/coredump (626688 bytes)
So you'd do
gdb /usr/libexec/dovecot/imap /var/spool/abrt/ccpp-1302330190-28508.new/coredump bt full
Strangly, abrt is deleting the dump directly saying it is corrupted, see below. I also add the output from /var/log/maillot if that may help.
/var/log/maillog
Apr 12 19:16:22 server00 dovecot: imap(userxx): Panic: file mailbox-list.c: line 330 (mailbox_list_get_unexpanded_path): assertion failed: (*location == SETTING_STRVAR_UNEXPANDED[0]) Apr 12 19:16:22 server00 dovecot: imap(userxx): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0() [0x13b3c1] -> /usr/lib/dovecot/libdovecot.so.0() [0x13b430] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x1116a0] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_list_get_unexpanded_path+0x138) [0x1af778] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_list_mkdir+0x52) [0x1b0bd2] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_list_create_missing_index_dir+0x129) [0x1b1059] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_storage_mailbox_open+0xa4) [0x1cae44] -> /usr/lib/dovecot/libdovecot-storage.so.0() [0x1eea9e] -> /usr/lib/dovecot/libdovecot-storage.so.0() [0x1abd75] -> dovecot/imap(cmd_select_full+0x1cf) [0x805314f] -> dovecot/imap(cmd_select+0x1a) [0x8053b7a] -> dovecot/imap() [0x805614d] -> dovecot/imap() [0x805622a] -> dovecot/imap(client_handle_input+0x12d) [0x805646d] -> dovecot/imap(client_input+0x60) [0x8056d70] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x52) [0x148c72] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0xd3) [0x149ed3] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40) [0x148bf0] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x2b) [0x1341fb] -> dovecot/imap(main+0x33d) [0x805fb0d] -> /lib/libc.so.6(__libc_start_main+0xe6) [0xb39e36] -> dovecot/imap() [0x804e111] Apr 12 19:16:23 server00 dovecot: master: Error: service(imap): child 11711 killed with signal 6 (core dumped)
/var/log/messages
pr 12 19:16:23 server00 abrt[11715]: saved core dump of pid 11711 (/usr/libexec/dovecot/imap) to /var/spool/abrt/ccpp-1302628582-11711.new/coredump (757760 bytes) Apr 12 19:16:23 server00 abrtd: Directory 'ccpp-1302628582-11711' creation detected Apr 12 19:16:23 server00 abrtd: '/var/spool/abrt/ccpp-1302111878-7921' does not exist Apr 12 19:16:23 server00 abrtd: Corrupted or bad crash /var/spool/abrt/ccpp-1302628582-11711 (res:1), deleting
--- On Tue, 4/12/11, Timo Sirainen <tss@iki.fi> wrote:
Subject: Re: [Dovecot] coredump in dovecot 2.0.11 Cc: dovecot@dovecot.org Date: Tuesday, April 12, 2011, 4:20 PM On Tue, 2011-04-12 at 07:06 +0100, k b wrote:
[root@isteren spool]# gdb /usr/libexec/dovecot/imap core /var/spool/core: No such file or directory. Should i create the /var/spool/core (file or directory) first?
The core parameter is a path to the core file created by the crash. The one shown by this log message:
Apr 9 08:23:10 server00 abrt[28509]: saved core dump of pid 28508 (/usr/libexec/dovecot/imap) to /var/spool/abrt/ccpp-1302330190-28508.new/coredump (626688 bytes)
So you'd do
gdb /usr/libexec/dovecot/imap /var/spool/abrt/ccpp-1302330190-28508.new/coredump bt full
On 12.4.2011, at 20.31, k b wrote:
Apr 12 19:16:22 server00 dovecot: imap(userxx): Panic: file mailbox-list.c: line 330 (mailbox_list_get_unexpanded_path): assertion failed: (*location == SETTING_STRVAR_UNEXPANDED[0])
I remember fixing one bug that failed with this. Maybe v2.0.12 will fix your troubles?
Will check as soon as there is a package for fedora 14.
--- On Tue, 4/12/11, Timo Sirainen <> wrote:
Subject: Re: [Dovecot] coredump in dovecot 2.0.11 Cc: "Dovecot Mailing List" <dovecot@dovecot.org> Date: Tuesday, April 12, 2011, 7:33 PM On 12.4.2011, at 20.31, k b wrote:
Apr 12 19:16:22 server00 dovecot: imap(userxx): Panic: file mailbox-list.c: line 330 (mailbox_list_get_unexpanded_path): assertion failed: (*location == SETTING_STRVAR_UNEXPANDED[0])
I remember fixing one bug that failed with this. Maybe v2.0.12 will fix your troubles?
On Tuesday, April 12, 2011 21:27:11 k b wrote:
Will check as soon as there is a package for fedora 14.
Usually there is updated dovecot package in updates-testing repository next working day after release, but it seems I've built new package, but forgot to push it to repository.
I've pushed it to updates-testing repository just a few minutes ago. It should be available within 24 hours, then you can update dovecot using (as root):
yum update --enablerepo=updates-testing dovecot
I don't know what's the problem with abrt, I'll ask its maintainers
PS:for getting backtrace from gdb, you need core file (the one abrt deletes), but that backtrace would be useless, you need to install debuginfo symbols first, using (as root):
debuginfo-install dovecot
On Friday, April 15, 2011 08:31:20 Michal Hlavinka wrote:
On Tuesday, April 12, 2011 21:27:11 k b wrote:
Will check as soon as there is a package for fedora 14.
Usually there is updated dovecot package in updates-testing repository next working day after release, but it seems I've built new package, but forgot to push it to repository.
I've pushed it to updates-testing repository just a few minutes ago. It should be available within 24 hours, then you can update dovecot using (as root):
yum update --enablerepo=updates-testing dovecot
I don't know what's the problem with abrt, I'll ask its maintainers
PS:for getting backtrace from gdb, you need core file (the one abrt deletes), but that backtrace would be useless, you need to install debuginfo symbols first, using (as root):
debuginfo-install dovecot
I've just asked abrt maintainer.
Corrupted or bad crash /var/spool/abrt/ccpp-1302628582-11711 (res:1), deleting
This message is misleading, because "res:1" means duplicate, so it's not bad nor corrupted crash, but coredump should be already stored in different directory.
How can you find it? Try:
grep -r dovecot /var/spool/abrt/*/component
it'll tell you what directory contains dovecot's crash. For example:
/var/spool/abrt/ccpp-1302856889-1869/compoment:dovecot
so core file would be: /var/spool/abrt/ccpp-1302856889-1869/coredump
Before gdb,you need to install debug info symbols:
debuginfo-install dovecot
and then, you can use:
gdb /usr/libexec/dovecot/imap /var/spool/abrt/ccpp-1302856889-1869/coredump bt full
Updating to 2.0.12 from the test repository made the trick, no more crashes. Thank you for all help!
--- On Fri, 4/15/11, Michal Hlavinka <mhlavink@redhat.com> wrote:
Will check as soon as there is a package for fedora
From: Michal Hlavinka Subject: Re: [Dovecot] coredump in dovecot 2.0.11 To: dovecot@dovecot.org Date: Friday, April 15, 2011, 8:31 AM On Tuesday, April 12, 2011 21:27:11 k b wrote: 14.
Usually there is updated dovecot package in updates-testing
repository next working day after release, but it seems I've built new package, but forgot to push it to repository.
I've pushed it to updates-testing repository just a few minutes ago. It should be available within 24 hours, then you can update dovecot using (as root):
yum update --enablerepo=updates-testing dovecot
I don't know what's the problem with abrt, I'll ask its maintainers
PS:for getting backtrace from gdb, you need core file (the one abrt deletes), but that backtrace would be useless, you need to install debuginfo symbols first, using (as root):
debuginfo-install dovecot
participants (3)
-
k b
-
Michal Hlavinka
-
Timo Sirainen