Commit 032c392b authored by Jim Fulton's avatar Jim Fulton

Added begin transaction hook, _begin.

parent dc0bbbf8
......@@ -96,6 +96,7 @@ class THUNKED_TM(TM.TM):
thunk_lock.acquire()
try:
get_transaction().register(Surrogate(self))
self._begin()
except:
thunk_lock.release()
else:
......
......@@ -96,25 +96,34 @@ class TM:
"""
_registered=None
def _begin(self): pass
def _register(self):
if not self._registered:
try:
get_transaction().register(Surrogate(self))
self._begin()
self._registered=1
except: pass
def tpc_begin(self, *ignored): pass
commit=abort=tpc_begin
def tpc_finish(self, *ignored):
def _finish(self):
self.db.commit()
self._registered=0
def tpc_abort(self, *ignored):
def _abort(self):
self.db.rollback()
self.db.checkpoint()
self._registered=0
def tpc_finish(self, *ignored):
try: self._finish()
finally: self._registered=0
def tpc_abort(self, *ignored):
try: self._abort()
finally: self._registered=0
class Surrogate:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment