Trimmed Zope-dev from this (cross-posts are bad)...
Lets just put the question out there: Does:
SESSION['someKey'] = someValue
Force a commited transaction?
As opposed to ...
someDict = Session['SomeKey']
someDict['aKey'] = 'aNewValue'
Neither "forces a committed transaction", but the former directly
marks an object (the session object) as changed. The latter does not
mark any object as changed if someDict is actually a Python
dictionary and not a first-class persistent object. At the end of a
transaction, only objects that are marked as changed are re-persisted
to the database.
This is further explained in the "mutable subobjects" section of the
sessions chapter of the Zope Book on plope.com.
Zope maillist - Zope@zope.org
** No cross posts or HTML encoding! **
(Related lists -