Re: pageMap locking issue
this has been discussed many times on the list, search the archives... -igor On Wed, Dec 14, 2011 at 9:20 AM, Karen Schaper wrote: > Hi, > > A user was testing a web application. > > Apparently they clicked on a link that opened a report and quickly > clicked the link again. > > The web application became unusable and tomcat had to be restarted. > > If the issue was a long request time ( perhaps something was going on > with the database at the time this happened resulting in a hang up ). > > What can I do to prevent the entire application being unusable for all > users? > > Here is the message that was in the logs. This happened on a server > that I don't have access to right now. Here is the message I was given. > I have been unable to reproduce the error myself. > > > org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap > null is still locked by: Thread[http-bio-8080-exec-2,5,main], giving up > trying to get the page for path: 309:filterForm > > org.apache.wicket.protocol.http.request.InvalidUrlException: > org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap > null is still locked by: Thread[http-bio-8080-exec-2,5,main], giving up > trying to get the page for path: 309:filterForm > > at > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262) > > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310) > > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428) > > at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) > > at > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479) > > at > org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:312) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) > > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) > > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) > > at org.apache.coyote.AbstractProtocol > $AbstractConnectionHandler.process(AbstractProtocol.java:515) > > at org.apache.tomcat.util.net.JIoEndpoint > $SocketProcessor.run(JIoEndpoint.java:300) > > at java.util.concurrent.ThreadPoolExecutor > $Worker.runTask(ThreadPoolExecutor.java:886) > > at java.util.concurrent.ThreadPoolExecutor > $Worker.run(ThreadPoolExecutor.java:908) > > at java.lang.Thread.run(Thread.java:662) > > > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
pageMap locking issue
Hi, A user was testing a web application. Apparently they clicked on a link that opened a report and quickly clicked the link again. The web application became unusable and tomcat had to be restarted. If the issue was a long request time ( perhaps something was going on with the database at the time this happened resulting in a hang up ). What can I do to prevent the entire application being unusable for all users? Here is the message that was in the logs. This happened on a server that I don't have access to right now. Here is the message I was given. I have been unable to reproduce the error myself. org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-bio-8080-exec-2,5,main], giving up trying to get the page for path: 309:filterForm org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-bio-8080-exec-2,5,main], giving up trying to get the page for path: 309:filterForm at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310) at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428) at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479) at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:312) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) at org.apache.coyote.AbstractProtocol $AbstractConnectionHandler.process(AbstractProtocol.java:515) at org.apache.tomcat.util.net.JIoEndpoint $SocketProcessor.run(JIoEndpoint.java:300) at java.util.concurrent.ThreadPoolExecutor $Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor $Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
AW: Pagemap locking issue
Thanks for your feedback Martijn. Yes, you're right. I will solve this issue using threads. Von: Martijn Dashorst An: users@wicket.apache.org Gesendet: Donnerstag, den 23. April 2009, 10:59:39 Uhr Betreff: Re: Pagemap locking issue Why would you want your users to wait for 1 minute to get results? On what planet and time/space continuum do you expect users to wait for that? Don't do the computation in the request thread. Compute the stuff in a separate thread, process or whatever and subscribe the user's session/page/whatever to a future outcome of that thread, and then rendering that directly. Sounds more like an application design issue than anything related to wicket. Martijn On Thu, Apr 23, 2009 at 10:06 AM, Tokalak Ahmet wrote: > Hi all, > > i'm developing a wicket application, in which i have to lookup mutiple tables > with millions of datasets depending of the user inputs. > Any operation on these tables is very time consuming not to talk about join > operations ... (A request can take a few seconds or some minutes to complete) > > Since we have changed to production mode we are facing very often with > pagemap locking errors which is big annoyance. > > I have increased the timeout value using > getRequestCycleSettings().setTimeout(Duration.minutes(10)), which isn't a > solution. > > The problem ist that long running requests block new requests (some requests > running undefinitely long?). > In our application we see that long running time consuming requests are > blocking the whole application (tomcat). > I think that long running request should be aborted after the timeout. > This is a severe problem for us and could lead to the decision to give up > Wicket. > Does anybody has any idea to solve this problem? > Thanks in advance. > > > -- Become a Wicket expert, learn from the best: http://wicketinaction.com Apache Wicket 1.3.5 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Pagemap locking issue
Why would you want your users to wait for 1 minute to get results? On what planet and time/space continuum do you expect users to wait for that? Don't do the computation in the request thread. Compute the stuff in a separate thread, process or whatever and subscribe the user's session/page/whatever to a future outcome of that thread, and then rendering that directly. Sounds more like an application design issue than anything related to wicket. Martijn On Thu, Apr 23, 2009 at 10:06 AM, Tokalak Ahmet wrote: > Hi all, > > i'm developing a wicket application, in which i have to lookup mutiple tables > with millions of datasets depending of the user inputs. > Any operation on these tables is very time consuming not to talk about join > operations ... (A request can take a few seconds or some minutes to complete) > > Since we have changed to production mode we are facing very often with > pagemap locking errors which is big annoyance. > > I have increased the timeout value using > getRequestCycleSettings().setTimeout(Duration.minutes(10)), which isn't a > solution. > > The problem ist that long running requests block new requests (some requests > running undefinitely long?). > In our application we see that long running time consuming requests are > blocking the whole application (tomcat). > I think that long running request should be aborted after the timeout. > This is a severe problem for us and could lead to the decision to give up > Wicket. > Does anybody has any idea to solve this problem? > Thanks in advance. > > > -- Become a Wicket expert, learn from the best: http://wicketinaction.com Apache Wicket 1.3.5 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Pagemap locking issue
Hi all, i'm developing a wicket application, in which i have to lookup mutiple tables with millions of datasets depending of the user inputs. Any operation on these tables is very time consuming not to talk about join operations ... (A request can take a few seconds or some minutes to complete) Since we have changed to production mode we are facing very often with pagemap locking errors which is big annoyance. I have increased the timeout value using getRequestCycleSettings().setTimeout(Duration.minutes(10)), which isn't a solution. The problem ist that long running requests block new requests (some requests running undefinitely long?). In our application we see that long running time consuming requests are blocking the whole application (tomcat). I think that long running request should be aborted after the timeout. This is a severe problem for us and could lead to the decision to give up Wicket. Does anybody has any idea to solve this problem? Thanks in advance.