Core dumps - How to find out the bug?
Hello! I wonder what to do when zope coredumps? I have been given the advice to hook up gdb to zope/python and see what happens, but there are two problems with this: 1) I barely know gdb at all, let alone know how to hook it up to a running process 2) The dumps happen at random (last one happened at 3 in the morning when a co-worker was working from home). I only have core dumps to work from. I include the stack from latest core dump. I am using python 2.1.2 (release), Zope2.4.3 release, RedHat Linux 7.2. Python is compiled --without-pymalloc What can I do more to track this down? Thanks, /dario ----- #0 0x0806fb77 in subtract_refs (containers=0x80b228c) at ./Modules/gcmodule.c:170 #1 0x0806ff74 in collect (young=0x80b228c, old=0x80b2298) at ./Modules/gcmodule.c:382 #2 0x080701c2 in collect_generations () at ./Modules/gcmodule.c:479 #3 0x08070255 in _PyGC_Insert (op=0x8c1dbbc) at ./Modules/gcmodule.c:508 #4 0x0807eb8e in PyMethod_New (func=0x82fa3dc, self=0x8c1d50c, class=0x82f9f14) at Objects/classobject.c:1834 #5 0x0807c74c in instance_getattr2 (inst=0x8c1d50c, name=0x8168e00) at Objects/classobject.c:642 #6 0x0807c67e in instance_getattr1 (inst=0x8c1d50c, name=0x8168e00) at Objects/classobject.c:608 #7 0x0807c789 in instance_getattr (inst=0x8c1d50c, name=0x8168e00) at Objects/classobject.c:656 #8 0x0808d291 in PyObject_GetAttr (v=0x8c1d50c, name=0x8168e00) at Objects/object.c:1052 #9 0x0809b7ba in builtin_hasattr (self=0x0, args=0x8d8cb94) at Python/bltinmodule.c:886 #10 0x08058df1 in call_cfunction (func=0x80c79c8, arg=0x8d8cb94, kw=0x0) at Python/ceval.c:2850 #11 0x080577ac in eval_code2 (co=0x82d91a0, globals=0x82ebd9c, locals=0x0, args=0x8a3a7e0, argcount=1, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:1952 #12 0x080590a3 in call_eval_code2 (func=0x82f9fb4, arg=0x8a3a7d4, kw=0x0) at Python/ceval.c:2971 #13 0x08058ce4 in call_object (func=0x82f9fb4, arg=0x8a3a7d4, kw=0x0) at Python/ceval.c:2810 #14 0x08058f77 in call_method (func=0x82f9fb4, arg=0x80cb8fc, kw=0x0) at Python/ceval.c:2928 #15 0x08058cd1 in call_object (func=0x8b9f2dc, arg=0x80cb8fc, kw=0x0) at Python/ceval.c:2808 #16 0x08058bcb in PyEval_CallObjectWithKeywords (func=0x8b9f2dc, arg=0x80cb8fc, kw=0x0) at Python/ceval.c:2745 #17 0x0807c433 in PyInstance_New (klass=0x82f9f14, arg=0x80cb8fc, kw=0x0) at Objects/classobject.c:489 ------ - -------------------------------------------------------------------- Dario Lopez-Kästen Systems Developer Chalmers Univ. of Technology dario@ita.chalmers.se ICQ will yield no hits IT Systems & Services
Dario - I had faced similar problems ... try the following thread for help http://aspn.activestate.com/ASPN/Mail/Message/zope-Dev/940742 on how to trap the error on a running process. For linux, you need the command strace ... here is one url http://www.pugcentral.org/howto/truss.htm Once you have the core file, you should invoke gdb like this ... gdb program core where program is the path to the python executable and core is the core file. Then, type "info threads" to see which thread and where the problem occured in zope/python. - j
participants (2)
-
Dario Lopez-Kästen -
Joseph Wayne Norton