Re: libgcc double-free, backend won't die - Mailing list pgsql-performance

From Craig James
Subject Re: libgcc double-free, backend won't die
Date
Msg-id 475EA8D1.1060001@emolecules.com
Whole thread Raw
In response to Re: libgcc double-free, backend won't die  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: libgcc double-free, backend won't die
List pgsql-performance
Tom Lane wrote:
> Craig James <craig_james@emolecules.com> writes:
>> This is driving me crazy.  I have some Postgres C function extensions in a shared library.  They've been working
fine. I upgraded to Fedora Core 6 and gcc4, and now every time psql(1) disconnects from the server, the serverlog gets
thismessage: 
>>    *** glibc detected *** postgres: mydb mydb [local] idle: double free or corruption! (!prev): 0x08bfcde8
>
> Have you tried attaching to one of these processes with gdb to see where
> it ends up?  Have you checked to see if the processes are becoming
> multi-threaded?
>
>             regards, tom lane
>


# ps -ef | grep postgres
postgres 31362     1  0 06:53 ?        00:00:00 /usr/local/pgsql/bin/postmaster -D /postgres/main
postgres 31364 31362  0 06:53 ?        00:00:00 postgres: writer process
postgres 31365 31362  0 06:53 ?        00:00:00 postgres: stats buffer process
postgres 31366 31365  0 06:53 ?        00:00:00 postgres: stats collector process
postgres 31442 31362  0 06:54 ?        00:00:00 postgres: craig_test craig_test [local] idle
root     31518 31500  0 07:06 pts/6    00:00:00 grep postgres
# gdb -p 31442
GNU gdb Red Hat Linux (6.5-15.fc6rh)
Copyright (C) 2006 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.

[snip - a bunch of symbol table stuff]

0x00110402 in __kernel_vsyscall ()
(gdb) bt
#0  0x00110402 in __kernel_vsyscall ()
#1  0x0082fb8e in __lll_mutex_lock_wait () from /lib/libc.so.6
#2  0x007bfce8 in _L_lock_14096 () from /lib/libc.so.6
#3  0x007befa4 in free () from /lib/libc.so.6
#4  0x00744f93 in _dl_map_object_deps () from /lib/ld-linux.so.2
#5  0x0074989d in dl_open_worker () from /lib/ld-linux.so.2
#6  0x00745c36 in _dl_catch_error () from /lib/ld-linux.so.2
#7  0x00749222 in _dl_open () from /lib/ld-linux.so.2
#8  0x00858712 in do_dlopen () from /lib/libc.so.6
#9  0x00745c36 in _dl_catch_error () from /lib/ld-linux.so.2
#10 0x008588c5 in __libc_dlopen_mode () from /lib/libc.so.6
#11 0x00836139 in init () from /lib/libc.so.6
#12 0x008362d3 in backtrace () from /lib/libc.so.6
#13 0x007b3e11 in __libc_message () from /lib/libc.so.6
#14 0x007bba96 in _int_free () from /lib/libc.so.6
#15 0x007befb0 in free () from /lib/libc.so.6
#16 0x001f943a in DeleteByteCode (node=0x890ff4) at chains.cpp:477
#17 0x00780859 in exit () from /lib/libc.so.6
#18 0x081a6064 in proc_exit ()
#19 0x081b5b9d in PostgresMain ()
#20 0x0818e34b in ServerLoop ()
#21 0x0818f1de in PostmasterMain ()
#22 0x08152369 in main ()
(gdb)


pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: libgcc double-free, backend won't die
Next
From: Alvaro Herrera
Date:
Subject: Re: libgcc double-free, backend won't die