Yes, and you can use the Control_Panel/DebugInfo as well and scroll down to the Connections table. Out of the 8 threads most of them should be vacant (ie. None) and if there are some requests logged there they should in the range of < 1 sec. If any of them are longer than 1 sec they are either stuck or doing something is supposed to take a long time (e.g. render a complex report, do a big upload, etc.) I once had a similar problem and I hacked the LDAPUserFolder to do a timing of the connections and found that connecting to the LDAP server was super slow and thus each connection cost too much time and it subsequently blocked the threads. Peter 2008/9/30 Nico Grubert <nicogrubert@gmail.com>:
Hi there
in the last days my Zope server seems to hang and the CPU is almost every time at 100 %.
I installed DeadlockDebugger and see a lot of these entries: ----------------------------------------------------------------------------- File "/usr/local/Zope-2.10.5/lib/python/OFS/Traversable.py", line 288, in unrestrictedTraverse return obj File "/usr/local/Zope-2.10.5/lib/python/ZODB/Connection.py", line 767, in setstate raise File "/usr/local/Zope-2.10.5/lib/python/ZODB/Connection.py", line 820, in _setstate obj._p_serial = serial File "/usr/local/Zope-2.10.5/lib/python/ZODB/serialize.py", line 605, in setGhostState obj.__setstate__(state) File "/usr/local/Zope-2.10.5/lib/python/ZODB/serialize.py", line 597, in getState return unpickler.load() File "/usr/local/Zope-2.10.5/lib/python/ZODB/serialize.py", line 471, in _persistent_load return self.load_oid(reference) File "/usr/local/Zope-2.10.5/lib/python/ZODB/serialize.py", line 537, in load_oid return self._conn.get(oid) File "/usr/local/Zope-2.10.5/lib/python/ZODB/Connection.py", line 225, in get return obj File "/usr/local/Zope-2.10.5/lib/python/ZODB/FileStorage/FileStorage.py", line 562, in load self._lock_release() File "/usr/local/lib/python2.4/threading.py", line 109, in acquire return rc -----------------------------------------------------------------------------
I am wondering what the last line File "/usr/local/lib/python2.4/threading.py", line 109, in acquire return rc does exactly mean. Are the threads blocked?
My configuration: -Zope 2.10.5 running with 8 threads on a 2-CPU machine with 8 GB of RAM -Python 2.4.4 -LDAPUserfolder -Silva CMS 2.0.8 -ZODB size: ~6 Gbyte -Only 6-10 people work in the CMS and no public access (spy bots, crawlers) access the Zope server
Regards Nico _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
-- Peter Bengtsson, work www.fry-it.com home www.peterbe.com hobby www.issuetrackerproduct.com