[ZODB-Dev] RE: [Zope-Annce] ZODB 3.2.4 release candidate 1released
Dieter Maurer
dieter at handshake.de
Thu Sep 9 13:57:15 EDT 2004
Tim Peters wrote at 2004-9-8 22:31 -0400:
>[Tim, on magically getting a new transaction when commit() fails]
>> But that's not how it works, and God only knows what would break if it got
>> changed. It works that way in 3.3 too, although there you truly (not just
>> "effectively") get a new transaction after a commit() attempt.
>
>So what do people think about this for 3.3? It's still in beta, so it's
>still *possible* to change 3.3's default TransactionManager to one that
>doesn't magically dump you into a new transaction if the current
>transaction's commit() fails. People who know far more about Zope than I do
>(like Chris and Shane) consistently say they want that. I know a number of
>ZODB tests would fail, but I don't care about that -- they're not *relying*
>on the current behavior, they're testing to make sure it stays broken
><wink>.
I do not understand why you want to keep the transaction the commit of which
has failed. The only thing, you can do with it is to abort it.
Relational databases behave in the same way: when the commit
fails (usually due to lock contention/dealock avoidance), the
transaction is implicitly aborted (to get the blocked resources freed).
I can see only one reason why to keep the failed transaction in tact:
in order to analyse it (which objects have been registered).
But, up to now, I did not yet meet any occasion where I really had
wanted that.
--
Dieter
More information about the ZODB-Dev
mailing list