On Thu, Aug 26, 2010 at 5:51 PM, Chris Withers <ch...@simplistix.co.uk> wrote:
> Here's an example:
>
> 2010-08-26 22:49:01 ERROR txn.-1338986496 Failed to abort resource
> manager: <MultiObjectResourceAdapter for <ZODB.DB.TransactionalUndo
> object at 0x2d509f0> at 47516176>
> Traceback (most recent call last):
>   File "transaction-1.1.0-py2.6.egg/transaction/_transaction.py", line
> 475, in abort
>     rm.abort(self)
>   File "transaction-1.1.0-py2.6.egg/transaction/_transaction.py", line
> 548, in abort
>     self.manager.abort(o, txn)
>   File "ZODB3-3.9.5-py2.6-macosx-10.3-fat.egg/ZODB/DB.py", line 985, in
> abort
>     raise NotImplementedError
> NotImplementedError
>
> This used to give a meaningful error message.

In 3.7 and earlier.

>
> Anyone know why it no longer does?

The resource manager abort method used to be a pass. In 3.9 in raises
an exception, which hides the undo exception.  An app should capture
the undo exception information before calling abort.

My guess is that this works much better in ZODB 3.10.

Jim


-- 
Jim Fulton
_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev

Reply via email to