[ZODB-Dev] [ZODB3.1] easily reproducible deadlock
kapil thangavelu
hazmat at objectrealms.net
Sun Dec 7 03:58:01 EST 2003
On 12/6/03 10:44 PM, "Shane Hathaway" <shane at zope.com> wrote:
> On Sun, 7 Dec 2003, Christian Robottom Reis wrote:
>
>> Hmm, are we talking about instantiating two *ClientStorages* in-process?
>>
>> I open multiple connections to the same storage all the time, AFAIUI,
>> but that's a matter of calling db.open() multiple times.
>
> I believe Dieter is talking about creating two ClientStorages that point
> to the same ZEO database and attempting to commit changes on both storages
> in a single transaction. The ZEO server will try to acquire a lock on the
> storage twice, resulting in a deadlock. Note that ZEO has some machinery
> for breaking locks after a timeout, but that won't work for Dieter.
>
so using setLocalTransaction() on a conn and committing them
individually/manually would work around this I guess.
-k
More information about the ZODB-Dev
mailing list