Hi Oleg, thanks for your response

> On Thu, Jul 05, 2007 at 10:17:31AM +0200, bernhard.maeder@zkb.ch wrote:
> > I'm experiencing frequent deadlocks in my cherrypy/sqlobject multithreaded
> > server application. I'm unable to reproduce the error in a small-scale
> > example yet, but one thing I noticed is, that it might be related to me
> > creating other sqlobjects in an overwritten _create() function.
> >
> > What I see is that various threads try to acquire a threadSafeMethod
> > decorator's lock, originating from various places:
>    Are they different locks?

I don't know, is there an easy way to tell? All I can see at the moment are the stack traces I have posted.

The accesses are made in different threads, to objects of the same class (MyClass in my example). One locks while resolving a ForeignKey in _SO_foreignKey(), one locks in _SO_finishCreate() and the third one in the selectresult's __iter__().

> And what are the error messages?

I have none, the application just locks. Or, more precisely: calls to sqlobject lock, while other parts of the application still work.




Diese Mitteilung ist nur fuer die Empfaengerin / den Empfaenger bestimmt.

Fuer den Fall, dass sie von nichtberechtigten Personen empfangen wird, bitten wir diese hoeflich, die Mitteilung an die ZKB zurueckzusenden und anschliessend die Mitteilung mit allen Anhaengen sowie allfaellige Kopien zu vernichten bzw. zu loeschen. Der Gebrauch der Information ist verboten.

This message is intended only for the named recipient and may contain confidential or privileged information.

If you have received it in error, please advise the sender by return e-mail and delete this message and any attachments. Any unauthorised use or dissemination of this information is strictly prohibited.