You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Alastair Maw (JIRA)" <ji...@apache.org> on 2006/10/18 19:29:40 UTC
[jira] Updated: (WICKET-8) deadlock contention for sessions
[ http://issues.apache.org/jira/browse/WICKET-8?page=all ]
Alastair Maw updated WICKET-8:
------------------------------
Attachment: ResourceTestPage.java
Java source for page to demonstrate the problem.
> deadlock contention for sessions
> --------------------------------
>
> Key: WICKET-8
> URL: http://issues.apache.org/jira/browse/WICKET-8
> Project: Wicket
> Issue Type: Bug
> Components: wicket
> Affects Versions: 1.2.3, 1.3
> Reporter: Alastair Maw
> Priority: Blocker
> Attachments: ResourceTestPage.html, ResourceTestPage.java
>
>
> I have a bunch of custom image thumbnails that each take a little while to serve up.
> With lots of them on the page at once I'm seeing what looks like a deadlock going on for the session objects. 1.2.2 didn't do this.
> Here's an edited thread-dump. There are lots of these:
> "http-8080-Processor26" daemon prio=1 tid=0x08875a60 nid=0x5480 waiting for monitor entry [0xa5ef9000..0xa5efee60]
> at wicket.request.compound.DefaultRequestTargetResolverStrategy.resolve(DefaultRequestTargetResolverStrategy.java:102)
> - waiting to lock <0xab6ee028> (a com.foo.MyWebSession)
> at wicket.request.compound.AbstractCompoundRequestCycleProcessor.resolve(AbstractCompoundRequestCycleProcessor.java:48)
> at wicket.RequestCycle.step(RequestCycle.java:992)
> at wicket.RequestCycle.steps(RequestCycle.java:1084)
> at wicket.RequestCycle.request(RequestCycle.java:454)
> at wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:219)
> [...]
> One of these:
> "http-8080-Processor23" daemon prio=1 tid=0x082a7988 nid=0x547a waiting for monitor entry [0xa5af8000..0xa5afd0e0]
> at wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:929)
> - waiting to lock <0xab6ee028> (a com.foo.MyWebSession)
> at wicket.RequestCycle.step(RequestCycle.java:1010)
> at wicket.RequestCycle.steps(RequestCycle.java:1084)
> at wicket.RequestCycle.request(RequestCycle.java:454)
> at wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:219)
> [...]
> And one of these:
> "http-8080-Processor20" daemon prio=1 tid=0x082a6978 nid=0x5116 in Object.wait() [0xa57f2000..0xa57f7160]
> at java.lang.Object.wait(Native Method)
> - waiting on <0xab7695c8> (a java.util.HashMap)
> at wicket.Session.getPage(Session.java:427)
> - locked <0xab7695c8> (a java.util.HashMap)
> at wicket.request.compound.DefaultRequestTargetResolverStrategy.resolveRenderedPage(DefaultRequestTargetResolverStrategy.java:215)
> at wicket.request.compound.DefaultRequestTargetResolverStrategy.resolve(DefaultRequestTargetResolverStrategy.java:152)
> - locked <0xab6ee028> (a com.foo.MyWebSession)
> at wicket.request.compound.AbstractCompoundRequestCycleProcessor.resolve(AbstractCompoundRequestCycleProcessor.java:48)
> at wicket.RequestCycle.step(RequestCycle.java:992)
> at wicket.RequestCycle.steps(RequestCycle.java:1084)
> at wicket.RequestCycle.request(RequestCycle.java:454)
> at wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:219)
> [...]
> Let me know if you need any more info. I can probably make an example webapp if required, but hopefully this will be sufficient.
> As far as I'm concerned it's pretty critical, as the entire session falls over and never recovers, so I'm marking it as a blocker. Hope that's OK.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira