[ZCM] [ZC] 200/ 3 Comment "2.5.0 on py 2.2 crashes repeatedly"
Collector: Zope Bugs and Patches ...
zope-coders@zope.org
Wed, 06 Feb 2002 14:29:18 -0500
Issue #200 Update (Comment) "2.5.0 on py 2.2 crashes repeatedly"
Status Deferred, Zope/bug medium
To followup, visit:
http://collector.zope.org/Zope/200
==============================================================
= Comment - Entry #3 by zigg on Feb 6, 2002 2:29 pm
Uploaded: "do_py_better.patch"
- http://collector.zope.org/Zope/200/do_py_better.patch/view
Here's a better do_py.patch; the first one might have used the wrong python to build... :-)
> Zope is NOT supported on Python 2.2 at this time; so caveat emptor.
Aw, you're no fun. :-)
> You probably built python 2.2 with pymalloc installed; turn it off -- it
> causes problems with extensionclass.
No dice. Tried --without-pymalloc and it's still crashing.
> Your gdb trace also shows that your core file doesn't match the
> executable you used; so it's not necessarily valid.
gdb lies like a dog. :-) In any event, this wasn't the case, as I pointed it to 'python' instead of 'python2.2' and got the same issue.
Anyway, defer away. Looks like OpenBSD 3.1 is going to have to ship with two versions of python :-/
________________________________________
= Defer - Entry #2 by matt on Feb 6, 2002 2:04 pm
Status: Pending => Deferred
Zope is NOT supported on Python 2.2 at this time; so caveat emptor.
You probably built python 2.2 with pymalloc installed; turn it off -- it causes problems with extensionclass.
Your gdb trace also shows that your core file doesn't match the executable you used; so it's not necessarily valid.
________________________________________
= Request - Entry #1 by zigg on Feb 6, 2002 1:53 pm
Uploaded: "do_py.patch"
- http://collector.zope.org/Zope/200/do_py.patch/view
I get this on both Solaris 2.8 and OpenBSD 3.0-current, although Solaris 2.8 gives slightly more detailed gdb information. z2.py appears to be crashing when executing 'import PersistentMapping', and zdaemon will restart it over, and over, and over again...
Attached is a little patch I made up that will convert Setup files to distutils setup.py's on the fly, so that you can compile Zope 2.5.0 with Python 2.2. (Incidentally, yes I did try it with the 'Makefile.pre.in' trick advertised elsewhere, and got the same results.)
Here's the gdb backtrace. Let me know if you want more info, I can certainly get more:
> Script started on Wed Feb 06 13:47:09 2002
> $ gdb ../bin/python2.2 core
> GNU gdb 5.0
> Copyright 2000 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.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. Type "show warranty" for details.
> This GDB was configured as "sparc-sun-solaris2.8"...
>
> warning: core file may not match specified executable file.
> Core was generated by `/export/home/b14741/tmp/Zope-2.5.0-src/../bin/python /export/home/b14741/tmp/Zo'.
> Program terminated with signal 9, Killed.
> Reading symbols from /usr/lib/libsocket.so.1...done.
> Loaded symbols for /usr/lib/libsocket.so.1
> Reading symbols from /usr/lib/libnsl.so.1...done.
> Loaded symbols for /usr/lib/libnsl.so.1
> Reading symbols from /usr/lib/libdl.so.1...done.
> Loaded symbols for /usr/lib/libdl.so.1
> Reading symbols from /usr/lib/libpthread.so.1...done.
> Loaded symbols for /usr/lib/libpthread.so.1
> Reading symbols from /usr/lib/libthread.so.1...done.
> Loaded symbols for /usr/lib/libthread.so.1
> Reading symbols from /usr/lib/libm.so.1...done.
> Loaded symbols for /usr/lib/libm.so.1
> Reading symbols from /usr/lib/libc.so.1...done.
> Loaded symbols for /usr/lib/libc.so.1
> Reading symbols from /usr/lib/libmp.so.2...done.
> Loaded symbols for /usr/lib/libmp.so.2
> Reading symbols from /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1...done.
> Loaded symbols for /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/strop.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/strop.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/fcntl.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/fcntl.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/select.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/select.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/_socket.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/_socket.so
> Reading symbols from /usr/lib/libssl.so.0.9.6...done.
> Loaded symbols for /usr/lib/libssl.so.0.9.6
> Reading symbols from /usr/lib/libcrypto.so.0.9.6...done.
> Loaded symbols for /usr/lib/libcrypto.so.0.9.6
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/errno.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/errno.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/time.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/time.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/cStringIO.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/cStringIO.so
> Reading symbols from /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ExtensionClass.so...done.
> Loaded symbols for /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ExtensionClass.so
> Reading symbols from /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/zlib.so...done.
> Loaded symbols for /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/zlib.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/binascii.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/binascii.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/md5.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/md5.so
> Reading symbols from /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/TimeStamp.so...done.
> Loaded symbols for /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/TimeStamp.so
> Reading symbols from /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/cPersistence.so...done.
> Loaded symbols for /export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/cPersistence.so
> Reading symbols from /export/home/b14741/tmp/lib/python2.2/lib-dynload/cPickle.so...done.
> Loaded symbols for /export/home/b14741/tmp/lib/python2.2/lib-dynload/cPickle.so
> #0 initializeBaseExtensionClass (self=0x0)
> at ../Components/ExtensionClass/src/ExtensionClass.c:1504
> 1504 abstract=self->tp_basicsize == sizeof(PyPureMixinObject);
> (gdb) bt
> #0 initializeBaseExtensionClass (self=0x0)
> at ../Components/ExtensionClass/src/ExtensionClass.c:1504
> #1 0xfe61f4b4 in export_type (dict=0x33c7e8, name=0x33c7a8 "", typ=0x0)
> at ../Components/ExtensionClass/src/ExtensionClass.c:3488
> #2 0x2857c in type_call (type=0xfe61f49c, args=0x33c7a8, kwds=0x0)
> at Objects/typeobject.c:158
> #3 0x835a8 in PyObject_Call (func=0xfe61f49c, arg=0x33c7a8, kw=0x0)
> at Objects/abstract.c:1665
> #4 0x49ed4 in PyEval_CallObjectWithKeywords (func=0xdefcc, arg=0x33c7a8,
> kw=0x0) at Python/ceval.c:3038
> #5 0x828bc in PyObject_CallFunction (callable=0xdefcc, format=0x33c7a8 "")
> at Objects/abstract.c:1706
> #6 0x4b01c in build_class (methods=0x33c2c0, bases=0x33c230, name=0x337f60)
> at Python/ceval.c:3592
> #7 0x46ab4 in eval_frame (f=0x175bb8) at Python/ceval.c:1511
> #8 0x492b4 in PyEval_EvalCodeEx (co=0x3390f0, globals=0x1e7140,
> locals=0xed258, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0,
> defcount=0, closure=0x0) at Python/ceval.c:2574
> #9 0x4bbac in PyEval_EvalCode (co=0x3390f0, globals=0x3391d0, locals=0x3391d0)
> at Python/ceval.c:483
> #10 0x6084c in PyImport_ExecCodeModuleEx (
> name=0xffbebd78 "ZODB.PersistentMapping", co=0x3390f0,
> pathname=0xffbeb398 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/PersistentMapping.pyc") at Python/import.c:506
> #11 0x60da0 in load_source_module (name=0xffbebd78 "ZODB.PersistentMapping",
> pathname=0xffbeb398 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/PersistentMapping.pyc", fp=0xebc40) at Python/import.c:776
> #12 0x6159c in load_module (name=0xffbebd78 "ZODB.PersistentMapping",
> fp=0xebc40,
> buf=0xffbeb888 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/PersistentMapping.py", type=1) at Python/import.c:1360
> #13 0x62550 in import_submodule (mod=0x1ad360,
> subname=0xffbebd7d "PersistentMapping",
> fullname=0xffbebd78 "ZODB.PersistentMapping") at Python/import.c:1899
> #14 0x62050 in load_next (mod=0x1ad360, altmod=0xcf360, p_name=0xffbebd7d,
> buf=0xffbebd78 "ZODB.PersistentMapping", p_buflen=0xffbebd74)
> at Python/import.c:1755
> #15 0x61b14 in import_module_ex (name=0x0, globals=0x336e00, locals=0x336e00,
> fromlist=0xcf360) at Python/import.c:1606
> #16 0x61d58 in PyImport_ImportModuleEx (name=0x337f74 "PersistentMapping",
> globals=0x336e00, locals=0x336e00, fromlist=0xcf360)
> at Python/import.c:1647
> #17 0xab9e4 in builtin___import__ (self=0x0, args=0x3222d0)
> at Python/bltinmodule.c:44
> #18 0xa7954 in PyCFunction_Call (func=0xee200, arg=0x3222d0, kw=0x0)
> at Objects/methodobject.c:101
> #19 0x835a8 in PyObject_Call (func=0xee200, arg=0x3222d0, kw=0xab998)
> at Objects/abstract.c:1665
> #20 0x49ed4 in PyEval_CallObjectWithKeywords (func=0xee200, arg=0x3222d0,
> kw=0x0) at Python/ceval.c:3038
> #21 0x47620 in eval_frame (f=0x1c0ab8) at Python/ceval.c:1828
> #22 0x492b4 in PyEval_EvalCodeEx (co=0x337e68, globals=0x337b34,
> locals=0xed258, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0,
> defcount=0, closure=0x0) at Python/ceval.c:2574
> #23 0x4bbac in PyEval_EvalCode (co=0x337e68, globals=0x336e00, locals=0x336e00)
> at Python/ceval.c:483
> #24 0x6084c in PyImport_ExecCodeModuleEx (name=0xffbed51d "ZODB", co=0x337e68,
> pathname=0xffbec648 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/__init__.pyc") at Python/import.c:506
> #25 0x60da0 in load_source_module (name=0xffbed51d "ZODB",
> pathname=0xffbec648 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/__init__.pyc", fp=0xebc30) at Python/import.c:776
> #26 0x6159c in load_module (name=0xffbed51d "ZODB", fp=0xebc30,
> buf=0xffbecb38 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB/__init__.py", type=1) at Python/import.c:1360
> #27 0x60f18 in load_package (name=0xffbed51d "ZODB", pathname=0x3379e0 "")
> at Python/import.c:833
> #28 0x615e0 in load_module (name=0xffbed51d "ZODB", fp=0x0,
> buf=0xffbed028 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/ZODB",
> type=5) at Python/import.c:1383
> #29 0x62550 in import_submodule (mod=0xcf360, subname=0xffbed51d "ZODB",
> fullname=0xffbed51d "ZODB") at Python/import.c:1899
> ---Type <return> to continue, or q <return> to quit---
> #30 0x620a4 in load_next (mod=0x1ad4c8, altmod=0xcf360, p_name=0xffbed51d,
> buf=0xffbed518 "Zope.ZODB", p_buflen=0xffbed514) at Python/import.c:1759
> #31 0x61b14 in import_module_ex (name=0x0, globals=0x3304f8, locals=0x3304f8,
> fromlist=0xcf360) at Python/import.c:1606
> #32 0x61d58 in PyImport_ImportModuleEx (name=0x328afc "ZODB",
> globals=0x3304f8, locals=0x3304f8, fromlist=0xcf360)
> at Python/import.c:1647
> #33 0xab9e4 in builtin___import__ (self=0x0, args=0x115900)
> at Python/bltinmodule.c:44
> #34 0xa7954 in PyCFunction_Call (func=0xee200, arg=0x115900, kw=0x0)
> at Objects/methodobject.c:101
> #35 0x835a8 in PyObject_Call (func=0xee200, arg=0x115900, kw=0xab998)
> at Objects/abstract.c:1665
> #36 0x49ed4 in PyEval_CallObjectWithKeywords (func=0xee200, arg=0x115900,
> kw=0x0) at Python/ceval.c:3038
> #37 0x47620 in eval_frame (f=0x11c9b8) at Python/ceval.c:1828
> #38 0x492b4 in PyEval_EvalCodeEx (co=0x1d8098, globals=0x3305ec,
> locals=0xed258, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0,
> defcount=0, closure=0x0) at Python/ceval.c:2574
> #39 0x4bbac in PyEval_EvalCode (co=0x1d8098, globals=0x3304f8, locals=0x3304f8)
> at Python/ceval.c:483
> #40 0x6084c in PyImport_ExecCodeModuleEx (name=0xffbeecb8 "Zope", co=0x1d8098,
> pathname=0xffbedde8 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/Zope/__init__.pyc") at Python/import.c:506
> #41 0x60da0 in load_source_module (name=0xffbeecb8 "Zope",
> pathname=0xffbedde8 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/Zope/__init__.pyc", fp=0xebc20) at Python/import.c:776
> #42 0x6159c in load_module (name=0xffbeecb8 "Zope", fp=0xebc20,
> buf=0xffbee2d8 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/Zope/__init__.py", type=1) at Python/import.c:1360
> #43 0x60f18 in load_package (name=0xffbeecb8 "Zope", pathname=0x32a660 "")
> at Python/import.c:833
> #44 0x615e0 in load_module (name=0xffbeecb8 "Zope", fp=0x0,
> buf=0xffbee7c8 "/export/home/b14741/tmp/Zope-2.5.0-src/lib/python/Zope",
> type=5) at Python/import.c:1383
> #45 0x62550 in import_submodule (mod=0xcf360, subname=0xffbeecb8 "Zope",
> fullname=0xffbeecb8 "Zope") at Python/import.c:1899
> #46 0x62050 in load_next (mod=0xcf360, altmod=0xcf360, p_name=0xffbeecb8,
> buf=0xffbeecb8 "Zope", p_buflen=0xffbeecb4) at Python/import.c:1755
> #47 0x61b14 in import_module_ex (name=0x0, globals=0x1070d8, locals=0x1070d8,
> fromlist=0xcf360) at Python/import.c:1606
> #48 0x61d58 in PyImport_ImportModuleEx (name=0x13728c "Zope",
> globals=0x1070d8, locals=0x1070d8, fromlist=0xcf360)
> at Python/import.c:1647
> #49 0xab9e4 in builtin___import__ (self=0x0, args=0xf6400)
> at Python/bltinmodule.c:44
> #50 0xa7954 in PyCFunction_Call (func=0xee200, arg=0xf6400, kw=0x0)
> at Objects/methodobject.c:101
> #51 0x835a8 in PyObject_Call (func=0xee200, arg=0xf6400, kw=0xab998)
> at Objects/abstract.c:1665
> #52 0x49ed4 in PyEval_CallObjectWithKeywords (func=0xee200, arg=0xf6400,
> kw=0x0) at Python/ceval.c:3038
> #53 0x47620 in eval_frame (f=0x329660) at Python/ceval.c:1828
> #54 0x492b4 in PyEval_EvalCodeEx (co=0x32d9d0, globals=0x3304d0,
> locals=0xed258, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0,
> defcount=0, closure=0x0) at Python/ceval.c:2574
> #55 0x4bbac in PyEval_EvalCode (co=0x32d9d0, globals=0x1070d8, locals=0x1070d8)
> at Python/ceval.c:483
> #56 0x6b6ac in run_node (n=0xec358, filename=0x32d9d0 "", globals=0x1070d8,
> locals=0x1070d8, flags=0x0) at Python/pythonrun.c:1083
> #57 0x6b658 in run_err_node (n=0xec358, filename=0x32d9d0 "",
> globals=0x1070d8, locals=0x1070d8, flags=0x0) at Python/pythonrun.c:1070
> #58 0x6b0e0 in PyRun_String (str=0x32802c "import Zope", start=257,
> globals=0x1070d8, locals=0x1070d8) at Python/pythonrun.c:1012
> #59 0x4b498 in exec_statement (f=0x142738, prog=0x328018, globals=0x1070d8,
> locals=0x1070d8) at Python/ceval.c:3672
> #60 0x46864 in eval_frame (f=0x142738) at Python/ceval.c:1467
> #61 0x492b4 in PyEval_EvalCodeEx (co=0x1368d0, globals=0x1aec67,
> locals=0xed258, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0,
> defcount=0, closure=0x0) at Python/ceval.c:2574
> #62 0x4bbac in PyEval_EvalCode (co=0x1368d0, globals=0xfd4e8, locals=0xfd4e8)
> at Python/ceval.c:483
> ---Type <return> to continue, or q <return> to quit---
> #63 0x6b6ac in run_node (n=0xec1d8, filename=0x1368d0 "", globals=0xfd4e8,
> locals=0xfd4e8, flags=0xffbefae4) at Python/pythonrun.c:1083
> #64 0x6b658 in run_err_node (n=0xec1d8, filename=0x1368d0 "", globals=0xfd4e8,
> locals=0xfd4e8, flags=0xffbefae4) at Python/pythonrun.c:1070
> #65 0x6b228 in PyRun_FileExFlags (fp=0xebc20,
> filename=0xffbefce9 "/export/home/b14741/tmp/Zope-2.5.0-src/z2.py",
> start=1037544, globals=0xfd4e8, locals=0xfd4e8, closeit=1,
> flags=0xffbefae4) at Python/pythonrun.c:1061
> #66 0x69b9c in PyRun_SimpleFileExFlags (fp=0xebc20,
> filename=0xffbefce9 "/export/home/b14741/tmp/Zope-2.5.0-src/z2.py",
> closeit=1, flags=0xffbefae4) at Python/pythonrun.c:689
> #67 0x6ad60 in PyRun_AnyFileExFlags (fp=0xebc20,
> filename=0xffbefce9 "/export/home/b14741/tmp/Zope-2.5.0-src/z2.py",
> closeit=1, flags=0xffbefae4) at Python/pythonrun.c:499
> #68 0x1ae6c in Py_Main (argc=3, argv=0xffbefbcc) at Modules/main.c:369
> #69 0x1a69c in main (argc=3, argv=0xffbefbcc) at Modules/python.c:10
> (gdb) quit
> $ exit
>
> script done on Wed Feb 06 13:47:23 2002
==============================================================