[Trac-tickets] Re: [The Trac Project] #1401: crash in svn bindings while browsing the timeline

The Trac Project noreply at edgewall.com
Tue Apr 5 08:51:41 EDT 2005


#1401: crash in svn bindings while browsing the timeline
---------------------+------------------------------------------------------
       Id:  1401     |      Status:  new                     
Component:  general  |    Modified:  Tue Apr  5 08:51:41 2005
 Severity:  major    |   Milestone:                          
 Priority:  normal   |     Version:  devel                   
    Owner:  jonas    |    Reporter:  cboos                   
---------------------+------------------------------------------------------
Changes (by cboos):

  * severity:  normal => major

Comment:

 Reverting to [1480] makes the crash go away,
 though now I have again this exception while accessing the Timeline (with
 no stack trace, just the exception):
 {{{
 Exception exceptions.TypeError: "'NoneType' object is not callable" in
 <bound method SubversionRepository.__del__ of
 <trac.versioncontrol.svn_fs.SubversionRepository object at 0x01386F90>>
 ignored
 }}}


 When I say the crash goes away... well, at least it appears
 to be as stable as it ever was...

 '''But''', if I try hard enough, I can actually crash '''any'''
 page served by '''tracd''', if I hit the refresh key as fast as I can
 (usually it takes from 20 to 40 repetitions).
 Then the debugger shows a similar number of Python threads.

 Unfortunately, this is not only a Windows issue.
 I was also able to get a crash on Linux,
 by performing the same kind of stress test
 (e.g. refreshing the WikiStart page as fast as I can)

 {{{
 Trac[main] ERROR: (104, 'Connection reset by peer')
 Trac[standalone] DEBUG: "GET /edgewall-trac/wiki HTTP/1.1" 500 -
 [New Thread 1294416 (LWP 17403)]
 Trac[main] ERROR: (104, 'Connection reset by peer')

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to Thread 1179721 (LWP 17396)]
 0x4003ea39 in instance_dealloc () from /usr/lib/libpython2.3.so.1.0
 (gdb) bt
 #0  0x4003ea39 in instance_dealloc () from /usr/lib/libpython2.3.so.1.0
 #1  0x40042a2c in instancemethod_dealloc () from
 /usr/lib/libpython2.3.so.1.0
 #2  0x4003eb99 in instance_dealloc () from /usr/lib/libpython2.3.so.1.0
 #3  0x4006e7e0 in clear_slots () from /usr/lib/libpython2.3.so.1.0
 #4  0x4006ea72 in subtype_dealloc () from /usr/lib/libpython2.3.so.1.0
 #5  0x4004dff0 in frame_dealloc () from /usr/lib/libpython2.3.so.1.0
 #6  0x4009459d in fast_function () from /usr/lib/libpython2.3.so.1.0
 #7  0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #8  0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #9  0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #10 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #11 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #12 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #13 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #14 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #15 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #16 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #17 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #18 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #19 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #20 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #21 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #22 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #23 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #24 0x40092dbc in PyEval_EvalCodeEx () from /usr/lib/libpython2.3.so.1.0
 #25 0x4004ff7c in function_call () from /usr/lib/libpython2.3.so.1.0
 #26 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #27 0x4004304b in instancemethod_call () from /usr/lib/libpython2.3.so.1.0
 #28 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #29 0x40093fb8 in PyEval_CallObjectWithKeywords () from
 /usr/lib/libpython2.3.so.1.0
 #30 0x4003e794 in PyInstance_New () from /usr/lib/libpython2.3.so.1.0
 #31 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #32 0x400948a6 in do_call () from /usr/lib/libpython2.3.so.1.0
 #33 0x40094322 in call_function () from /usr/lib/libpython2.3.so.1.0
 #34 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #35 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #36 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #37 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #38 0x40092dbc in PyEval_EvalCodeEx () from /usr/lib/libpython2.3.so.1.0
 #39 0x4004ff7c in function_call () from /usr/lib/libpython2.3.so.1.0
 #40 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #41 0x40094a86 in ext_do_call () from /usr/lib/libpython2.3.so.1.0
 #42 0x40090091 in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #43 0x40094576 in fast_function () from /usr/lib/libpython2.3.so.1.0
 #44 0x400943ac in call_function () from /usr/lib/libpython2.3.so.1.0
 #45 0x400903cc in eval_frame () from /usr/lib/libpython2.3.so.1.0
 #46 0x40092dbc in PyEval_EvalCodeEx () from /usr/lib/libpython2.3.so.1.0
 #47 0x4004ff7c in function_call () from /usr/lib/libpython2.3.so.1.0
 #48 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #49 0x4004304b in instancemethod_call () from /usr/lib/libpython2.3.so.1.0
 #50 0x4003b627 in PyObject_Call () from /usr/lib/libpython2.3.so.1.0
 #51 0x40093fb8 in PyEval_CallObjectWithKeywords () from
 /usr/lib/libpython2.3.so.1.0
 #52 0x400b9bc4 in t_bootstrap () from /usr/lib/libpython2.3.so.1.0
 #53 0x4011bf60 in pthread_start_thread () from /lib/i686/libpthread.so.0
 #54 0x4011c0fe in pthread_start_thread_event () from
 /lib/i686/libpthread.so.0
 #55 0x40335327 in clone () from /lib/i686/libc.so.6
 (gdb)
 }}}

 This was on SuSE 9.0 Linux (2.4.21-99-default), with tracd of the
 source:trunk#1496

 Wondering if it was a generic tracd issue, I reverted to an old revision
 [1000],
 but I can't crash this one, even on Windows.
 Now I'm starting a dichotomic search...

-- 
Ticket URL: <http://projects.edgewall.com/trac/ticket/1401>
The Trac Project <>


More information about the Trac-Tickets mailing list