"double free or corruption" when deleting HDF object
"Lalo Martins" <[email protected]>
| Newsgroups | gmane.text.clearsilver.general |
|---|---|
| Message-ID | <[email protected]> |
This happens *every* time an HDF is freed. From within mod_python, it crashes the Apache child process entirely :-( lalo:/repo/www/newsite> python Python 2.5 (r25:51908, Jan 12 2007, 14:52:36) [GCC 4.1.1] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import gc, neo_cgi >>> from neo_util import HDF >>> d = HDF() >>> del d *** glibc detected *** python: double free or corruption (out): 0x00002b9ce8e730d0 *** ======= Backtrace: ========= /lib/libc.so.6[0x2b9ce965b648] /lib/libc.so.6(__libc_free+0x7b)[0x2b9ce965c91d] /usr/lib/libpython2.5.so.1.0(PyDict_DelItem+0xf7)[0x2b9ce8f6be07] /usr/lib/libpython2.5.so.1.0(PyEval_EvalFrameEx+0x38b8)[0x2b9ce8fb5b18] /usr/lib/libpython2.5.so.1.0(PyEval_EvalCodeEx+0x603)[0x2b9ce8fb98f3] /usr/lib/libpython2.5.so.1.0(PyEval_EvalCode+0x32)[0x2b9ce8fb9ba2] /usr/lib/libpython2.5.so.1.0(PyRun_InteractiveOneFlags+0x1ba)[0x2b9ce8fdbf1a] /usr/lib/libpython2.5.so.1.0(PyRun_InteractiveLoopFlags+0x4e)[0x2b9ce8fdc11e] /usr/lib/libpython2.5.so.1.0(PyRun_AnyFileExFlags+0x4c)[0x2b9ce8fdc79c] /usr/lib/libpython2.5.so.1.0(Py_Main+0x945)[0x2b9ce8fe4fb5] /lib/libc.so.6(__libc_start_main+0x14b)[0x2b9ce961b44b] python[0x4006f9] ======= Memory map: ======== 00400000-00401000 r-xp 00000000 03:01 105472 /usr/bin/python 00500000-00501000 rw-p 00000000 03:01 105472 /usr/bin/python 00501000-005e1000 rw-p 00501000 00:00 0 [heap] 2b9ce8de6000-2b9ce8dfd000 r-xp 00000000 03:01 481693 /lib/ld-2.4.so 2b9ce8dfd000-2b9ce8e3f000 rw-p 2b9ce8dfd000 00:00 0 2b9ce8e5f000-2b9ce8ea0000 rw-p 2b9ce8e5f000 00:00 0 2b9ce8ec0000-2b9ce8ef1000 rw-p 2b9ce8ec0000 00:00 0 2b9ce8efc000-2b9ce8efd000 r--p 00016000 03:01 481693 /lib/ld-2.4.so 2b9ce8efd000-2b9ce8efe000 rw-p 00017000 03:01 481693 /lib/ld-2.4.so 2b9ce8efe000-2b9ce902f000 r-xp 00000000 03:01 107917 /usr/lib/libpython2.5.so.1.0 2b9ce902f000-2b9ce912e000 ---p 00131000 03:01 107917 /usr/lib/libpython2.5.so.1.0 2b9ce912e000-2b9ce9162000 rw-p 00130000 03:01 107917 /usr/lib/libpython2.5.so.1.0 2b9ce9162000-2b9ce916b000 rw-p 2b9ce9162000 00:00 0 2b9ce916b000-2b9ce917b000 r-xp 00000000 03:01 481505 /lib/libpthread-2.4.so 2b9ce917b000-2b9ce927a000 ---p 00010000 03:01 481505 /lib/libpthread-2.4.so 2b9ce927a000-2b9ce927b000 r--p 0000f000 03:01 481505 /lib/libpthread-2.4.so 2b9ce927b000-2b9ce927c000 rw-p 00010000 03:01 481505 /lib/libpthread-2.4.so 2b9ce927c000-2b9ce9280000 rw-p 2b9ce927c000 00:00 0 2b9ce9280000-2b9ce9282000 r-xp 00000000 03:01 17096 /lib/libdl-2.4.so 2b9ce9282000-2b9ce9381000 ---p 00002000 03:01 17096 /lib/libdl-2.4.so 2b9ce9381000-2b9ce9382000 r--p 00001000 03:01 17096 /lib/libdl-2.4.so 2b9ce9382000-2b9ce9383000 rw-p 00002000 03:01 17096 /lib/libdl-2.4.so 2b9ce9383000-2b9ce9385000 r-xp 00000000 03:01 481682 /lib/libutil-2.4.so 2b9ce9385000-2b9ce9484000 ---p 00002000 03:01 481682 /lib/libutil-2.4.so 2b9ce9484000-2b9ce9485000 r--p 00001000 03:01 481682 /lib/libutil-2.4.so 2b9ce9485000-2b9ce9486000 rw-p 00002000 03:01 481682 /lib/libutil-2.4.so 2b9ce9486000-2b9ce9487000 rw-p 2b9ce9486000 00:00 0 2b9ce9487000-2b9ce94fd000 r-xp 00000000 03:01 17045 /lib/libm-2.4.so 2b9ce94fd000-2b9ce95fc000 ---p 00076000 03:01 17045 /lib/libm-2.4.so 2b9ce95fc000-2b9ce95fd000 r--p 00075000 03:01 17045 /lib/libm-2.4.so 2b9ce95fd000-2b9ce95fe000 rw-p 00076000 03:01 17045 /lib/libm-2.4.so 2b9ce95fe000-2b9ce96fc000 r-xp 00000000 03:01 16005 /lib/libc-2.4.so 2b9ce96fc000-2b9ce97fc000 ---p 000fe000 03:01 16005 /lib/libc-2.4.so 2b9ce97fc000-2b9ce9800000 r--p 000fe000 03:01 16005 /lib/libc-2.4.so 2b9ce9800000-2b9ce9801000 rw-p 00102000 03:01 16005 /lib/libc-2.4.so 2b9ce9801000-2b9ce9808000 rw-p 2b9ce9801000 00:00 0 2b9ce9808000-2b9cec294000 r--p 00000000 03:01 850285 /usr/lib/locale/locale-archive 2b9cec2b4000-2b9cec2f5000 rw-p 2b9cec2b zsh: abort python I'm using AMD64 GNU/Linux, if that matters.