[Zope-dev] cPickleCache endless loop...

Dieter Maurer dieter at handshake.de
Sun Jan 25 17:30:06 EST 2004


Jeremy Hylton wrote at 2004-1-23 12:12 -0500:
> ...
>The only useful answer is to avoid using __del__ on
>persistent objects.  If there are resources that really
>need  to be finalized whenever the object is ghosted, you
>can put them in a non-persistent sub-object that does have
>an __del__.

A minor note (not essential for the current discussion):

  "__del__" is not called when the object is ghostified
  but when the last (non cache) reference to it is deleted (i.e.
  when the object is flushed from memory).


By the way, there seem to be some objects around which trigger this
"infinite loop behaviour".

  I noticed that a "minimize" in our production environment
  often leads to a no longer responding Zope instance. 
  I think now that this may be caused by the above problem.
  We use mainly stock Zope and CMF objects, Postgres and
  MySQL database adapters and "LocalFS".

-- 
Dieter



More information about the Zope-Dev mailing list