Re: [GENERAL] double free corruption?
On Fri, 2007-12-28 at 12:33 -0300, marcelo Cortez wrote: > i received the follow message from backend ,it's this > a bug? ... > *** glibc detected *** postgres: postgres richelet > 201.235.11.133(2504) SELECT: double free or corruption > (!prev): 0x0845d7e8 *** > === Backtrace: = Does this happen to be on Novell SLES/SLED 10? I saw this bug sporadically and in several applications 6-9 months ago. I don't think I ever knew the cause or even what specifically tickled this problem, but my recollection is that a Novell patch set fixed it. I remember that I saw a log of these in /var/log/messages (assuming you're logging locally). Consider looking there to see if you have other instances of this bug with other applications. -Reece -- Reece Hart, http://harts.net/reece/, GPG:0x25EC91A0
Re: [GENERAL] double free corruption?
Erik Jones <[EMAIL PROTECTED]> writes: > Well, if Postgres had killed the proc itself it would have written > out a nicely formatted Postgres-style memory context report along > with an ERROR message along the lines of OUT OF MEMORY and the > request size and Postgres would not have bounced. Since the > postmaster dropped into recovery mode when the proc received the > SIGABRT and died, that means that the signal came from somewhere > else, OOM killer? No, an abort() is expected when glibc's malloc code detects a problem, and all that other junk is stuff that malloc helpfully prints on stderr before committing hara-kiri. This seems clearly a memory-stomp bug of some kind (although there's a very small probability that it was a transient RAM glitch). Not much we can do about it without a test case, though. regards, tom lane ---(end of broadcast)--- TIP 4: Have you searched our list archives? http://archives.postgresql.org/
Re: [GENERAL] double free corruption?
marcelo Cortez <[EMAIL PROTECTED]> writes: > sorry i forgot to mention > i'm developing one c external program, may be fault is > my code , but surprise to me the message, what bad > practice generate this behavior? > fail seems to be not to reproducible all times, > i'm using beta3 version, it's this important? What it looks like to me is something clobbering memory, eg writing more data into a palloc'd memory chunk than will fit; which results in overwriting malloc's own data structures, causing malloc to complain when it notices. Whether it's your bug or something wrong in the beta is hard to say. > pd: gdb can help? ( for debugging my own code) --enable-cassert would probably help more, since it would turn on some clobber-detection support in PG. regards, tom lane ---(end of broadcast)--- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly
Re: [GENERAL] double free corruption?
Folks sorry i forgot to mention i'm developing one c external program, may be fault is my code , but surprise to me the message, what bad practice generate this behavior? fail seems to be not to reproducible all times, i'm using beta3 version, it's this important? select version: "PostgreSQL 8.3beta3 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 (Gentoo 4.1.2 p1.0.1)" i'ts correct GCC version? best regards. MDC pd: gdb can help? ( for debugging my own code) links about howto debug? --- Tom Lane <[EMAIL PROTECTED]> escribió: > marcelo Cortez <[EMAIL PROTECTED]> writes: > > *** glibc detected *** postgres: postgres richelet > > 201.235.11.133(2504) SELECT: double free or > corruption > > (!prev): 0x0845d7e8 *** > > What PG version is this? Can you provide a > reproducible test case? > > regards, tom lane > > ---(end of > broadcast)--- > TIP 5: don't forget to increase your free space map > settings > Tarjeta de crédito Yahoo! de Banco Supervielle. Solicitá tu nueva Tarjeta de crédito. De tu PC directo a tu casa. www.tuprimeratarjeta.com.ar ---(end of broadcast)--- TIP 6: explain analyze is your friend
Re: [GENERAL] double free corruption?
marcelo Cortez <[EMAIL PROTECTED]> writes: > *** glibc detected *** postgres: postgres richelet > 201.235.11.133(2504) SELECT: double free or corruption > (!prev): 0x0845d7e8 *** What PG version is this? Can you provide a reproducible test case? regards, tom lane ---(end of broadcast)--- TIP 5: don't forget to increase your free space map settings
Re: [GENERAL] double free corruption?
On Dec 28, 2007, at 9:33 AM, marcelo Cortez wrote: Folks i received the follow message from backend ,it's this a bug? best regards and happy new year MDC pd: any clue are welcomed. *** glibc detected *** postgres: postgres richelet 201.235.11.133(2504) SELECT: double free or corruption (!prev): 0x0845d7e8 *** === Backtrace: = /lib/libc.so.6[0xb7e0e930] /lib/libc.so.6(__libc_free+0x89)[0xb7e0ff99] postgres: postgres richelet 201.235.11.133(2504) SELECT[0x82b1c0b] postgres: postgres richelet 201.235.11.133(2504) SELECT(MemoryContextDelete+0x42)[0x82b2152] postgres: postgres richelet 201.235.11.133(2504) SELECT(MemoryContextDeleteChildren+0x28)[0x82b2198] postgres: postgres richelet 201.235.11.133(2504) SELECT(MemoryContextDelete+0x12)[0x82b2122] postgres: postgres richelet 201.235.11.133(2504) SELECT(MemoryContextDeleteChildren+0x28)[0x82b2198] postgres: postgres richelet 201.235.11.133(2504) SELECT(AtAbort_Portals+0x6f)[0x82b281f] postgres: postgres richelet 201.235.11.133(2504) SELECT[0x80adef3] postgres: postgres richelet 201.235.11.133(2504) SELECT(AbortCurrentTransaction+0x25)[0x80ae115] postgres: postgres richelet 201.235.11.133(2504) SELECT(PostgresMain+0x25c6)[0x81f7226] postgres: postgres richelet 201.235.11.133(2504) SELECT[0x81ca226] postgres: postgres richelet 201.235.11.133(2504) SELECT(PostmasterMain+0x81d)[0x81caf0d] postgres: postgres richelet 201.235.11.133(2504) SELECT(main+0x1c7)[0x8182e67] /lib/libc.so.6(__libc_start_main+0xd8)[0xb7dc0838] postgres: postgres richelet 201.235.11.133(2504) SELECT[0x807fa81] === Memory map: 08048000-0836a000 r-xp 03:03 715320 /usr/local/pgsql/bin/postgres 0836a000-08373000 rw-p 00321000 03:03 715320 /usr/local/pgsql/bin/postgres 08373000-0846d000 rw-p 08373000 00:00 0 [heap] b5f0-b5f21000 rw-p b5f0 00:00 0 b5f21000-b600 ---p b5f21000 00:00 0 b60c4000-b60ce000 r-xp 03:03 744303 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1 b60ce000-b60cf000 rw-p 9000 03:03 744303 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1 b60d7000-b60d9000 r-xp 03:03 708661 /usr/lib/gconv/ISO8859-1.so b60d9000-b60db000 rw-p 1000 03:03 708661 /usr/lib/gconv/ISO8859-1.so b60db000-b60e3000 r-xp 03:03 527740 /usr/local/pgsql/lib/fuzzystrmatch.so b60e3000-b60e4000 rw-p 7000 03:03 527740 /usr/local/pgsql/lib/fuzzystrmatch.so b60e4000-b6146000 rw-p b60e4000 00:00 0 b6146000-b6154000 r-xp 03:03 709308 /lib/libresolv-2.5.so b6154000-b6156000 rw-p d000 03:03 709308 /lib/libresolv-2.5.so b6156000-b6158000 rw-p b6156000 00:00 0 b6158000-b615c000 r-xp 03:03 709745 /lib/libnss_dns-2.5.so b615c000-b615e000 rw-p 3000 03:03 709745 /lib/libnss_dns-2.5.so b615e000-b6166000 r-xp 03:03 708470 /lib/libnss_files-2.5.so b6166000-b6168000 rw-p 7000 03:03 708470 /lib/libnss_files-2.5.so b6169000-b617 r--s 03:03 6427 /usr/lib/gconv/gconv-modules.cache b617-b61a3000 r--p 03:03 8975 /usr/lib/locale/es_AR/LC_CTYPE b61a3000-b61a8000 r--p 03:03 16329 /usr/lib/locale/es_AR/LC_COLLATE b61a8000-b7daa000 rw-s 00:08 114456 /SYSV0052e2c1 (deleted) b7daa000-b7dab000 rw-p b7daa000 00:00 0 b7dab000-b7ecd000 r-xp 03:03 709248 /lib/libc-2.5.so b7ecd000-b7ece000 r--p 00122000 03:03 709248 /lib/libc-2.5.so b7ece000-b7ed rw-p 00123000 03:03 709248 /lib/libc-2.5.so b7ed-b7ed3000 rw-p b7ed 00:00 0 b7ed3000-b7ef6000 r-xp 03:03 709734 /lib/libm-2.5.so b7ef6000-b7ef8000 rw-p 00022000 03:03 709734 /lib/libm-2.5.so b7ef8000-b7efa000 r-xp 03:03 709751 /lib/libdl-2.5.so b7efa000-b7efc000 rw-p 1000 03:03 709751 /lib/libdl-2.5.so b7efc000-b7f01000 r-xp 03:03 709885 /lib/libcrypt-2.5.so b7f01000-b7f03000 rw-p 4000 03:03 709885 /lib/libcrypt-2.5.so b7f03000-b7f2b000 rw-p b7f03000 00:00 0 b7f2d000-b7f2e000 r-xp 03:03 715438 /usr/local/pgsql/lib/utf8_and_iso8859_1.so b7f2e000-b7f2f000 rw-p 03:03 715438 /usr/local/pgsql/lib/utf8_and_iso8859_1.so b7f2f000-b7f3 r--p 03:03 206641 /usr/lib/locale/es_AR/LC_TIME b7f3-b7f31000 r--p 03:03 16760 /usr/lib/locale/es_AR/LC_NUMERIC b7f31000-b7f32000 r--p 03:03 206642 /usr/lib/locale/es_AR/LC_MONETARY b7f32000-b7f33000 r--p 03:03 16336 /usr/lib/locale/es_AR/LC_MESSAGES/SYS_LC_MESSAGES b7f33000-b7f4d000 r-xp 03:03 709923 /lib/ld-2.5.so b7f4d000-b7f4e000 r--p 00019000 03:03 709923 /lib/ld-2.5.so b7f4e000-b7f4f000 rw-p 0001a000 03:03 709923 /lib/ld-2.5.so bfdc4000-bfdda000 rw-p bfdc4000 00:00 0 [stack] e000-f000 r-xp 00:00 0 [vdso] LOG: server process (PID 15558) was terminated by signal 6: Aborted LOG: terminating any other active server processes WARNING: terminating connection because of crash of another server process DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly