[Zope-dev] deciding whether to do work in tpc_vote or tpc_finish

Chris Withers chris at simplistix.co.uk
Tue Jun 8 07:59:34 EDT 2010


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?

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?

cheers,

Chris



More information about the Zope-Dev mailing list