[Zope-dev] Memory 2.1.4-2.1.6 a.k.a. how to get objects out of the cache

Stuart 'Zen' Bishop zen@cs.rmit.edu.au
Mon, 29 May 2000 18:25:59 +1000 (EST)


On Sat, 27 May 2000, Eric Sattler wrote:

> I do see GenericUserFolder and SQLSession objects with the
> Control_Panel_Debug screen, and they do not seem to go away.  I wrote
> a simple python script to do nothing more than authenticate (log in)
> using the GenericUserFolder method docLogin.  The memory usage quickly
> grows out of control.  After waiting 15 minutes(my cookie timeout),
> no decrease in memory usage.  The objects are still in the cache also. 

Phillip J. Eby identified a memory leak in GenericUserFolder over the 
weekend. I'm just downloading LoginManager now to see if I can steal 
their fix :-) (Oh... thats easy. Just search for 'Waaaaaaa!')

There is also a good chance that this is also causing the SQLSession
leak - GUF is maintaining a reference to REQUEST (in a nice circular
way causing the memory leak), and REQUEST maintains a reference to
the SESSION, so the SESSION won't be freed.

I should have a patch available shortly. I would appreciate people
who know how to drive the debuggers better than I confirming that
the leak is gone.

/me hops on the 'real garbage collection for Python' bandwagon

-- 
Stuart Bishop                          Work: zen@cs.rmit.edu.au
Senior Systems Alchemist               Play: zen@shangri-la.dropbear.id.au
Computer Science, RMIT University