[Zope-Dev] Zope 2.1.6 Memory issue

Shane Hathaway shane@digicool.com
Mon, 22 May 2000 18:29:06 -0400


Jason Spisak wrote:
> >
> > After minimizing your in-memory cache, look at the manage_debug screen
> > again.  Are the refcounts still high?  I bet they are...
> >
> 
> No.  The ref counts drop to hundreds.

That's a big relief.  Okay, now we know that this isn't a memory leak,
it's only related to the fact that your site requires ZODB to load a
very large number of objects into memory in order to perform normal
operations.

Here's something to think about: whenever an object is added to or
removed from a folder, all objects in all neighboring folders and below
are traversed.  The manage_beforeDelete and manage_afterAdd hooks are
called on each object.

Also, there is still the issue that Python doesn't seem to be releasing
memory back to the system.  I wonder whether that capability has been
implemented in Python.

> Also, is see reference to 161 Products.GadflyDA.gadfly.kjparser.ParseRule,
> and I'm not even useing Gadfly!
> 
> What the heck is that about?  Anyone?

Chances are some other product is "reaching in" to Gadfly.  Do you have
the Zope tutorial installed?  It uses Gadfly.

> 
> Thing's seem to be a bit nicer now that I took out an External Method that
> returns a DateTime object the Catalog for Indexing.  However, there's only
> about 14,000 of objects with that property in existsnce in my DB, and they
> don't change often.
> 
> Here's the code:
> 
> def calendar_day(self)
>     return int(self.calendar_date)/1000000
> 
> Used to return the unique integer day.

That code actually doesn't return a DateTime instance, just an integer.

Keep me informed.

Shane