[Zope-dev] _v_ variables and cache garbage collection

Dieter Maurer dieter at handshake.de
Sun Oct 26 04:42:08 EST 2003


Chris Withers wrote at 2003-10-23 18:52 +0100:
 > ...
 > This is slightly OT but reminded me of something important I need to ask.
 > 
 > ZOracleDA stores its database connections in a _v_ variable on the DA object.
 > It tries to delete this by setting the _v_ variable to None.
 > 
 > However, a number of people have noticed that the Oracle connections aren't 
 > going away from the Oracle server's point of view.
 > 
 > In most cases, however, they do go away when the ZODB cache is cleared.

This suggests that something holds references to the connection objects.
I have no idea what this could be.


Some years ago, when I was forged to work with Oracle (it was a bad time),
I had to fix a circular reference (in "DCOracle1" at that time)
with stored proceedure handling.
However, these cyclic structures would not have disappeared by
flushing the ZODB cache. This means, you must see something else.

I never worked with "DCOracle2".

 > What in the ZODB cache or other ZODB code could be causing _v_ variables to 
 > stick around after they've been set to None in their containing objects?

Nothing.

When you assign "None" to the "_v_variable", then this reference will go
away. There may be others, which you did not set to "None"...

-- 
Dieter



More information about the Zope-Dev mailing list