[ZODB-Dev] Subtransaction backward compatibility
Jim Fulton
jim at zope.com
Tue Aug 23 14:53:29 EDT 2005
Tim Peters wrote:
> [Dieter Maurer]
>
>>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
>>garbage collection.
>
>
> 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
incrgc.
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
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the ZODB-Dev
mailing list