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

- C

Zope maillist  -
**   No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to