Nick Coghlan <ncogh...@gmail.com> added the comment: 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. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue11321> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com