On 8 June 2010 12:59, Chris Withers <ch...@simplistix.co.uk> wrote:
> Laurence Rowe wrote:
>> it fails you will end up in an inconsistent state whatever. It's just
>> that with the maildir implementation, it pretty much can't fail as it
>> is only a rename and that should always succeed. Really, it should
>> register as an after commit hook instead.
> How do I do that?

transaction.get().addAfterCommitHook(callable, args, kwargs)

> Since the data manager I'm working on is for a transcation message sending
> implementation, maybe it should be an after commit thing too?
> My other thought was to have it commit the message send in tpc_vote, and
> make sure it sorts before zope.sqlalchemy. That way, if the message send
> fails, the "transaction" will be aborted, and that will include rolling back
> the zope.sqlalchemy session rather than committing it.
> Views?

In that case if the sqlalchemy commit fails, you still sent the message.

Zope-Dev maillist  -  Zope-Dev@zope.org
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope )

Reply via email to