Re: Concurrent request handling
Re: Concurrent request handling
- Subject: Re: Concurrent request handling
- From: Gennady Kushnir <email@hidden>
- Date: Tue, 24 May 2011 12:38:21 +0400
Hello again.
I did turn on concurrent request handling. And now I have some issue
with ec locking.
I have subclassed EOEditingContext and this subclass posts alerts to
the log when a thread attempts to lock ec that was already locked with
another thread. And now I have a log full of such messages.
I thought it was me to somehow make a mess to locking. But those log
messages contain stack traces. And they show that ec was locked by
MultiECLockManager on Session.awake() as it should have. And that the
thread is trying to lock ec when doing ec.saveChanges() which action
could not happen anywhere outside RRloop.
How could that be that session is awaken by one thread and action is
invoked by another within the same RRloop?
Interesting thing is that users don't complain about deadlocks in App.
Also I can see in log that they continue working (in the same session)
after such issues. So I assume those issues don't cause deadlocks.
However users do complain that the App is running slow sometimes.
Maybe that is because of such "local" locks?
Gennady Kushnir
2011/3/10 Chuck Hill <email@hidden>:
>
> On Mar 10, 2011, at 1:22 AM, Gennady Kushnir wrote:
>
>> Hello all !
>> I am wondering whether to turn on concurrent request handling on my
>> deployment or not.
>
> I always have this on.
>
>> What are potential drawbacks of this? I assume there should be some.
>> Why would it be off by default otherwise?
>> I could not find anything interesting on this in documentation.
>
> WebObjects has several defaults that are not what most people would want. I think these defaults were set to preserve existing behavior when new features were added. Unless you are sharing unlocked global writable data (from static ivars or Application), there is no reason to NOT have this on. If you are sharing unlocked global writable data, then you are Bad Person and should fix this!
>
>
>> And another question: would concurrent request handling save me from
>> global application deadlocks when one single request locks on
>> exception?
>
>
> Maybe. It depends on why that session/request is deadlocking. I would focus on fixing that.
>
>
> Chuck
>
> --
> Chuck Hill Senior Consultant / VP Development
>
> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
> http://www.global-village.net/products/practical_webobjects
>
>
>
>
>
>
>
>
--
С уважением,
Геннадий Кушнир
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden