I tried anyway and I can confirm. I'm not creating needless sessions. The app locks up anyway though…
I lost hope in finding the real reason, for now I would be happy to find a dirty workaround. I need those apps to bounce anyway. I already tried using ERTimeToKill and it's ineffective. The lockups are quite rare: I have 10 instances running, bouncing every 6 hours and it happens maybe 2 times a week, but if an instance locks up the instances running become 9 and in the long run I'll have everything locked up. Any suggestions? Matteo On 20/mar/2013, at 01:16, Chuck Hill <ch...@global-village.net> wrote: > I think the problem is not that it is creating needless sessions, but that a > checked-out session is not getting checked back in. > > Chuck > > > On 2013-03-19, at 5:08 PM, Simon wrote: > >> if we have this kind of issue the first thing we do is log out session >> creation and check the stack traces. stick something like this in your >> session constructor then check the output: >> >> public Session() { >> super(); >> StringWriter stringWriter = new StringWriter(); >> >> PrintWriter printWriter = new PrintWriter(stringWriter); >> >> (new Throwable()).printStackTrace(printWriter); >> >> String trace = stringWriter.toString(); <---- log this somewhere that you >> can get easy access to >> >> } >> >> >> >> >> >> >> On 19 March 2013 23:15, Altera WO Team <webobje...@altera.it> wrote: >> Wow, good hint! >> >> In theory I'm not touching a Session but sometimes, when something in an EO >> changes I trigger e-mail sending. >> I use ERMailDeliveryHTML using a component instantiated with a brand new >> wocontext using ERXWOContext.newContext() >> the component is not referencing a Session in any part. >> >> Could it be the cause? >> >> Matteo >> >> >> On 19/mar/2013, at 21:24, Simon <si...@potwells.co.uk> wrote: >> >>> ...or you are touching the session object outside the RR loop. the classic >>> gotcha is rendering a component in a thread that touches the session in >>> some way e.g. delivering an email in a thread that uses a component to >>> render it's content... been caught by that one soooo many times! >>> >>> >>> On 19 March 2013 17:51, Chuck Hill <ch...@global-village.net> wrote: >>> Hi Matteo, >>> >>> You have one or more Zombie (aka Immortal) Sessions, as shown by stack >>> traces like this: >>> "WorkerThread11" prio=10 tid=0x0000000041848800 nid=0x1010 in Object.wait() >>> [0x00007f16f7cfa000] >>> java.lang.Thread.State: WAITING (on object monitor) >>> at java.lang.Object.wait(Native Method) >>> - waiting on <0x00000000d120b328> (a >>> com.webobjects.appserver.WOSessionStore$TimeoutEntry) >>> at java.lang.Object.wait(Object.java:485) >>> at >>> com.webobjects.appserver.WOSessionStore.checkOutSessionWithID(WOSessionStore.java:191) >>> - locked <0x00000000d120b328> (a >>> com.webobjects.appserver.WOSessionStore$TimeoutEntry) >>> at >>> com.webobjects.appserver.WOApplication.restoreSessionWithID(WOApplication.java:1913) >>> at >>> er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2403) >>> at >>> er.extensions.appserver.ERXWOContext.existingSession(ERXWOContext.java:57) >>> at >>> er.extensions.appserver.ERXWOContext.hasSession(ERXWOContext.java:69) >>> at >>> com.webobjects.appserver.WOAction.existingSession(WOAction.java:190) >>> at com.tla.calendar.DirectAction.goToAction(DirectAction.java:454) >>> >>> >>> This likely has one of two causes: >>> 1. The application is getting OutOfMemory errors, which can leave the >>> session store in an insane state >>> 2. The app is throwing an exception from sleep() in Session. If you >>> overrride sleep() it should use a try...finally block >>> >>> public void sleep() { >>> try { >>> // Your code here! >>> } finally { >>> super.sleep(); >>> } >>> } >>> >>> >>> Chuck >>> >>> >>> >>> On 2013-03-19, at 9:38 AM, Altera WO Team wrote: >>> >>>> Hi all, >>>> >>>> I'm having a strange issue on a WO installation on EC2 (oracle jvm). >>>> Same strange application which had immortal sessions… >>>> >>>> Sometimes (quite rarely) a bounced application (put in refuse new >>>> sessions) never quits and it's not accessible from JavaMonitor. >>>> If I look at the logs i see: >>>> >>>> Mar 19 12:38:52 B2C[2002] (ERXNSLogLog4jBridge.java:44) WARN NSLog - >>>> <com.tla.calendar.Application>: refusing new clients and below min active >>>> session threshold >>>> Mar 19 12:38:52 B2C[2002] (ERXNSLogLog4jBridge.java:44) WARN NSLog - >>>> <com.tla.calendar.Application>: about to terminate... >>>> >>>> The only thing left is to kill the instance… Which is not nice. >>>> >>>> I'm not overriding the terminate() method in Application. >>>> >>>> I am attaching a stack trace if it helps. >>>> <B2Cjstack.txt> >>>> >>>> Thanks, >>>> >>>> >>>> >>>> Matteo Centro >>>> _______________________________________________ >>>> Do not post admin requests to the list. They will be ignored. >>>> Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) >>>> Help/Unsubscribe/Update your Subscription: >>>> https://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net >>>> >>>> This email sent to ch...@global-village.net >>> >>> -- >>> Chuck Hill >>> Executive Managing Partner, VP Development and Technical Services >>> >>> 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/gvc/practical_webobjects >>> >>> Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest >>> Growing Companies in B.C! >>> Global Village Consulting ranks 76th in 24th annual PROFIT 200 ranking of >>> Canada’s Fastest-Growing Companies by PROFIT Magazine! >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> _______________________________________________ >>> Do not post admin requests to the list. They will be ignored. >>> Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) >>> Help/Unsubscribe/Update your Subscription: >>> https://lists.apple.com/mailman/options/webobjects-dev/simon%40potwells.co.uk >>> >>> This email sent to si...@potwells.co.uk >>> >> >> > > -- > Chuck Hill > Executive Managing Partner, VP Development and Technical Services > > 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/gvc/practical_webobjects > > Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing > Companies in B.C! > Global Village Consulting ranks 76th in 24th annual PROFIT 200 ranking of > Canada’s Fastest-Growing Companies by PROFIT Magazine! > > > > > > > > > > > _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com