[ZODB-Dev] afterCommitHook on abort
Christian Zagrodnick
cz at gocept.com
Thu Aug 30 09:48:53 EDT 2007
Hi,
the documentation in the _transaction.py reads:
After-commit hook
------------------
Sometimes, applications want to execute code after a transaction is
committed or aborted. [...] The callable will be called with a Boolean
value representing the status of the commit operation as first
argument (true if successfull or false iff aborted) [...]
And indeed in the commit() method it reads:
try:
self._commitResources()
self.status = Status.COMMITTED
except:
t, v, tb = self._saveAndGetCommitishError()
self._callAfterCommitHooks(status=False)
raise t, v, tb
else:
if self._manager:
self._manager.free(self)
self._synchronizers.map(lambda s: s.afterCompletion(self))
self._callAfterCommitHooks(status=True)
But in the abort() method the hooks are not called.
Is this intentional? If yes, the documentation should be adjusted to
reflect that the hooks are *only* called if there *is* a commit and it
is *failing*.
If not the hooks should be called in abort (my favourite) :)
Regards,
--
Christian Zagrodnick
gocept gmbh & co. kg · forsterstrasse 29 · 06112 halle/saale
www.gocept.com · fon. +49 345 12298894 · fax. +49 345 12298891
More information about the ZODB-Dev
mailing list