[ZODB-Dev] world gone wrong after write conflict
Dieter Maurer
dieter at handshake.de
Mon Apr 24 15:11:15 EDT 2006
John Belmonte wrote at 2006-4-22 19:13 -0400:
> ...
>I'm attempting to dust off my old high-write ZODB/ZEO app, and am having
>a hard time tracking down a problem. Something goes very wrong in the
>case where I catch a write conflict, abort the transaction, and attempt
>a retry. Frequently it appears as if the abort did not restore the
>objects to their state before the transaction. (Specifically, I'm
>calling transaction.abort() followed by connection.sync().) For
>example, say that in a transaction I'm deleting an item from an OOBTree
>and at commit there is a write conflict. I abort the transaction, but
>then when I attempt to delete the item again, I get a KeyError on the
>OOBTree. (The symptom is not specific to OOBTree's.)
It is unlikely that this is standard ZODB behaviour:
Zope catches "ConflictError"s and performs a retry
(and we do it in a "TransactionHandler" class).
It works without apparent flaw.
--
Dieter
More information about the ZODB-Dev
mailing list