I have put an enhancement proposal at


It allows applications to declare that they need for 
some (so called sticky) objects a garanteed lifetime for their
volatile attributes that extends until at least the next
transaction boundary.

This extension makes safe the use of volatile attributes for
the following cases:

  * the storage of database connections in "Shared.DC.ZRDB.Connection"

  * the former use of "_v_skindata" in "Products.CMFCore.Skinnable"
    (now replaced by a much more complex, less efficient and not
    completely correct solution)

  * the use of "_v_is_cp"  in "Archetypes.BaseObject"
    (and other use of volatile attributes for control purposes).

This statement implies that the current use is unsafe.

Feedback is welcome -- either in the Wiki or here.

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to