Tim Peters wrote:
Subtransactions used to be used for two purposes:
* ensure that newly created objects get "_p_" attributes
(especially "_p_jar" and "_p_oid")
* release memory in the mid of large transactions
(i.e. reading and/or writing large amounts of objects)
With ZODB 3.4, subtransactions are implemented as savepoints. They can
still be used for the first purpose. But, they no longer start cache
Jim, was the latter intentional? It surprised me when Dieter pointed it
out, and in the ZODB NEWS file I explicitly implied <wink> otherwise.
Later what? Assuming that we no longer call incrgc, that would be an
oversight. When a connection does a savepoint, it should also do an
Note that applications that *really* want to reduce memory after a
savepoint may and often should make explicit cache-management calls
on the transaction. This should still work.
Jim Fulton mailto:[EMAIL PROTECTED] Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org