[Zope-dev] [Bug] Zope's transaction behaviour flawed
Chris McDonough
chrism@zope.com
02 Feb 2003 16:41:36 -0500
I am +1 on this. I suspect that before committing, though, we should
ask people who make use of Zope's transaction manager in "advanced" ways
like Phillip Eby.
- C
On Sun, 2003-02-02 at 10:40, Dieter Maurer wrote:
> The new behaviour would look something like this:
>
> ## request starts
> transaction.begin()
> try:
> object= REQUEST.traverse(...)
> mapply(object,...)
> transaction.commit()
> except:
> transaction.abort()
> transaction.begin()
> transaction.note('%s (application error handling)'
> % '/'.join(object.getPhysicalPath)
> )
> try:
> handle_error()
> transaction.commit()
> except:
> default_handle_error() # Zope's default error handling
> # it should not have side effects
> # and is executed inside the
> # error handling transaction
> transaction.abort()
> ## request ends