[Zope-dev] Re: zpatterns-0.4.0a5: problem
withunregistering transactionals
Phillip J. Eby
pje@telecommunity.com
Thu, 27 Jul 2000 10:44:06 -0500
At 07:12 PM 7/27/00 +0400, Jephte CLAIN wrote:
>"Phillip J. Eby" a écrit :
>>
>> Question... Are you on 2.1.x or 2.2?
>I'm still on 2.1.6. I cannot afford a migration of my product now since
>it is still in developpement and my customer wants it to work as soon as
>possible.
Okay, that makes sense. 2.1.6 has a weirdness in the ZPublisher exception
hook that begins a new transaction instead of aborting the old one cleanly,
and that ultimately causes the objects to get aborted twice. I reported
this a month or two ago and it got fixed in 2.2. You're going to have to
go with your patch, though, because there's not a simple patch you can
apply to 2.1.6 to fix the problem in Zope itself. Unfortunately, it is
hard for me to tell whether your patch has any other repercussions. :( I
will try to review the structure of my Transactional class and see if there
are any side effects (besides the one you've found) of an object being
aborted twice.
>> Also, in your example, tpc_entered
>> is not set because tpc_entered is only true if the transaction commit
>> process (tpc = two-phase commit) has been started.
>I thought that tpc_entered would go back to 0 when the transaction is
>over. It is clear that I don't know how the transaction machinery really
>works.
It's probably because of the double-abort weirdness. :(