You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Eelco Hillenius (JIRA)" <ji...@apache.org> on 2006/10/17 13:00:36 UTC

[jira] Commented: (WICKET-8) deadlock contention for sessions

    [ http://issues.apache.org/jira/browse/WICKET-8?page=comments#action_12442863 ] 
            
Eelco Hillenius commented on WICKET-8:
--------------------------------------

We should create a test for this in wicket-threadtest (1.x branch), so that we can fix it an keep it fixed. I'm too busy today to this this myself. But the sooner we have this, the sooner we can fix it.

> 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
>
> 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