Re: SOLVED: Zombie sessions
Re: SOLVED: Zombie sessions
- Subject: Re: SOLVED: Zombie sessions
- From: Simon McLean <email@hidden>
- Date: Thu, 23 Oct 2008 08:09:53 +0100
Blimey, this has taken me weeks to figure out...
We've been plagued with zombie sessions for weeks on a couple of
production apps. One, for example, is used by a team of 5 people
who sign on in the morning and out in the evening, by which time
the app is busy running 300+ sessions!
Anyway, after much digging I finally nailed it down to a component
that was being used to render email. We use the following method to
instantiate a component and then call
generateResponse().contentString() to get it's html content:
public static WOComponent instantiatePage(String pageName) {
// Create a context from a fake request
WORequest request = new WORequest("GET", "", "HTTP/1.1", null,
null, null);
WOContext context =
WOApplication.application().createContextForRequest(request);
return WOApplication.application().pageWithName(pageName, context);
}
The problem was that one of the components used as an email touched
the session. I believe because we are using a fake context this
results in a new session being created. I'm not sure why those
extra sessions don't just expire like normal ones ? But anyway,
problem solved. I can sleep again.
They weren't created normally in the RR loop so sleep never got
called on them. Like a watched pot never boiling, awake sessions
never terminate. :-P
Chuck
Hi Chuck -
Is there any reason why a session would normally sit inactive but
awake for a long period of time ?
I wonder if it's something that could / should be recognised and
handled by WO ?
Simon
_______________________________________________
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