At the end of a transaction, the (possibly changed) session
is not added back to the current SessionStore, so changes
are lost. Not good.
The attached patch (against today's CVS) fixes it.
Btw, it seems to me that it would be reasonable
for SessionStore to provide a default storeSession
method, using the dictionary metaphor. Subclasses
could override, but this default makes sense for most
cases:
def storeSession(self, session):
self[session.identifier()] = session
Patch to Transaction.py
Logged In: YES
user_id=88162
I've checked this into CVS. It fixes the File session store
which was broken, but has no effect on the Dynamic or Memory
stores which were working properly (and presumably this is
why nobody else complained about this being broken -- most
people just use the default of Dynamic).