--- a/server/session.py Mon Nov 23 14:13:53 2009 +0100
+++ b/server/session.py Thu Dec 03 17:17:43 2009 +0100
@@ -476,6 +476,15 @@
self.rollback(reset_pool)
raise
self.pool.commit()
+ self.commit_state = trstate = 'postcommit'
+ while self.pending_operations:
+ operation = self.pending_operations.pop(0)
+ operation.processed = trstate
+ try:
+ operation.handle_event('%s_event' % trstate)
+ except:
+ self.exception('error while %sing', trstate)
+ self.debug('%s session %s done', trstate, self.id)
finally:
self._touch()
self.commit_state = None