[Zope] Zope lockup - thread exited without releasing global lock?
Brad Clements
bkc@murkworks.com
Fri, 9 Mar 2001 22:33:04 -0500
More info on my periodic Zope 2.2.2 lockup (RH7 running Zope supplied
Python with gvib)
using gdb, all of the zope threads are waiting to acquire the global lock,
except for two threads.
The first thread is waiting for a pid to finish (in waitpid) (must be the
process manager)
The other thread always seems to be something like this:
(gdb) where
#0 0x4008de75 in __sigsuspend (set=0x8695104)
at ../sysdeps/unix/sysv/linux/sigsuspend.c:45
#1 0x400347e9 in __pthread_wait_for_restart_signal (self=0x4003e360)
at pthread.c:901
#2 0x40036ad9 in __pthread_alt_lock (lock=0x40183720, self=0x0)
at restart.h:34
#3 0x40032b26 in __pthread_mutex_lock (mutex=0x40183710) at mutex.c:120
#4 0x400dee48 in __libc_free (mem=0x86e0488) at malloc.c:3052
#5 0x4003234b in pthread_exited (pid=20510) at manager.c:707
#6 0x40032709 in pthread_reap_children () at manager.c:787
#7 0x40031a28 in __pthread_manager (arg=0x13) at manager.c:158
Note that in this case, the current pid is 20509. I see
pthread_exited(pid=20510)
Does this mean that 20510 quit, and 20590 was waiting on it?
In any case, I suspect that the thread is somehow exit'ing without
releasing the global lock, but I can't really be entirely sure. Anyone have
any suggestions on how I can track this down?
Brad Clements, bkc@murkworks.com (315)268-1000
http://www.murkworks.com (315)268-9812 Fax
netmeeting: ils://ils.murkworks.com AOL-IM: BKClements