[ZODB-Dev] Tracking down a freeze (deadlock?)
Florent Guillaume
fg at nuxeo.com
Thu Feb 24 06:25:36 EST 2005
> File "/opt/zope/lib/python/ZODB/Connection.py", line 257, in _setDB
> self._flush_invalidations()
> File "/opt/zope/lib/python/ZODB/Connection.py", line 552, in
> _flush_invalidations
> self._cache.invalidate(self._invalidated)
> File
> "/appli/zeo/zeocli-192.168.106.6-8080/Products/DICOD/DICODMailingList.py",
> line 125, in __del__
> File "/opt/zope/lib/python/ZODB/Connection.py", line 599, in setstate
> invalid = self._is_invalidated(obj)
> File "/opt/zope/lib/python/ZODB/Connection.py", line 617, in _is_invalidated
> self._inv_lock.acquire()
Hm I think I can answer that one. A persistent object is not supposed to
have a __del__ that accesses the ZODB right ? Otherwise, well, we see
what happens.
Ok I'll switch that code to using manage_beforeDelete. And I'll have a
talk with the person who wrote this :)
Florent
--
Florent Guillaume, Nuxeo (Paris, France) CTO, Director of R&D
+33 1 40 33 71 59 http://nuxeo.com fg at nuxeo.com
More information about the ZODB-Dev
mailing list