Message129624
Here's a sample stack trace of it blowing up:
Program received signal SIGSEGV, Segmentation fault.
0x0000000000479404 in type_dealloc (type=0x7ffff6a82f20) at Objects/typeobject.c:2523
2523 _PyObject_GC_UNTRACK(type);
(gdb) bt
#0 0x0000000000479404 in type_dealloc (type=0x7ffff6a82f20) at Objects/typeobject.c:2523
#1 0x0000000000465a2b in dict_dealloc (mp=0x8f61b0) at Objects/dictobject.c:1020
#2 0x00000000004e43c8 in _PyImport_FixupExtensionUnicode (mod=0x7ffff7f68ef0,
name=0x7fffffffcd40 "_pickle", filename=0x7ffff7f12570) at Python/import.c:611
#3 0x00000000004e7fcf in _PyImport_LoadDynamicModule (name=0x7fffffffcd40 "_pickle",
pathname=0x7fffffffbc70 "/usr/local/lib/python3.3/lib-dynload/_pickle.cpython-33m.so",
fp=<value optimised out>) at ./Python/importdl.c:85
#4 0x00000000004e5f79 in import_submodule (mod=0x796b20, subname=0x7fffffffcd40 "_pickle",
fullname=0x7fffffffcd40 "_pickle") at Python/import.c:2894
#5 0x00000000004e61ef in load_next (mod=0x796b20, altmod=<value optimised out>,
p_name=<value optimised out>, buf=0x7fffffffcd40 "_pickle", p_buflen=0x7fffffffcd38)
at Python/import.c:2706
#6 0x00000000004e6931 in import_module_level (name=0x0, globals=0x922060,
locals=<value optimised out>, fromlist=0x796b20, level=<value optimised out>)
at Python/import.c:2422
#7 0x00000000004e6e74 in PyImport_ImportModuleLevel (name=0x7ffff7e6c550 "_pickle",
globals=0x922060, locals=0x922060, fromlist=0x796b20, level=<value optimised out>)
at Python/import.c:2474
#8 0x00000000004c642b in builtin___import__ (self=<value optimised out>,
args=<value optimised out>, kwds=<value optimised out>) at Python/bltinmodule.c:167
#9 0x000000000042c897 in PyObject_Call (func=0x7ffff7edf8c0, arg=0x8e79e0, kw=0xa2e79)
at Objects/abstract.c:2149
#10 0x00000000004c6c73 in PyEval_CallObjectWithKeywords (func=0x7ffff7edf8c0,
arg=0x7ffff7e85ef0, kw=0xa2e79) at Python/ceval.c:3739
#11 0x00000000004ca6de in PyEval_EvalFrameEx (f=0xae4490, throwflag=<value optimised out>)
at Python/ceval.c:2316
#12 0x00000000004cf343 in PyEval_EvalCodeEx (_co=0x7ffff7ea5690, globals=<value optimised out>,
locals=<value optimised out>, args=0x0, argcount=<value optimised out>,
kws=<value optimised out>, kwcount=0, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0)
at Python/ceval.c:3295
#13 0x00000000004cf5db in PyEval_EvalCode (co=0x7ffff6a82f20, globals=0x8e79e0, locals=0xa2e79)
at Python/ceval.c:761
#14 0x0000000000419c7e in run_mod (command=<value optimised out>, flags=<value optimised out>)
at Python/pythonrun.c:1769
#15 PyRun_StringFlags (command=<value optimised out>, flags=<value optimised out>)
at Python/pythonrun.c:1703
#16 PyRun_SimpleStringFlags (command=<value optimised out>, flags=<value optimised out>)
at Python/pythonrun.c:1276
#17 0x0000000000415c41 in main ()
So _pickle itself doesn't seem to be dying, but it is eventually leaving things in a bad state so that the *next* time around, the import machinery blows up. Note that switching to a different module (e.g. "_struct") eliminates the segfault. |
|
Date |
User |
Action |
Args |
2011-02-27 13:43:36 | ncoghlan | set | recipients:
+ ncoghlan, brett.cannon, pitrou, alexandre.vassalotti, palm.kevin |
2011-02-27 13:43:36 | ncoghlan | set | messageid: <1298814216.07.0.887426069736.issue11321@psf.upfronthosting.co.za> |
2011-02-27 13:43:35 | ncoghlan | link | issue11321 messages |
2011-02-27 13:43:34 | ncoghlan | create | |
|