[ 
https://issues.apache.org/jira/browse/TAPESTRY-2561?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12629206#action_12629206
 ] 

Howard M. Lewis Ship commented on TAPESTRY-2561:
------------------------------------------------

FYI: Ultimately, I think the problem here was the fact that javassist.ClassPool 
needs to invoke setAccessible() in order to invoke defineClass(), a  protected 
ClassLoader method.  That is, I believe, what ends up locking the class loader 
(though it's hard to tell, at it may be the actual call to defineClass() that 
does it).

In any case, introducing the extra URLClassLoader between the context class 
loader and the component layer class loader is doing the trick.

> Rapidly refreshing a page, even the same page, can cause a deadlock related 
> to class loading
> --------------------------------------------------------------------------------------------
>
>                 Key: TAPESTRY-2561
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2561
>             Project: Tapestry
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.0.14
>         Environment: Mac pro, OS Version:      Mac OS X 10.5.4 (9E17)
> Java HotSpot(TM) Client VM (1.5.0_13-119 mixed mode,
> sharing)
>            Reporter: Steven Woolley
>            Assignee: Howard M. Lewis Ship
>            Priority: Blocker
>             Fix For: 5.0.15
>
>         Attachments: full thread dump deadlock.txt
>
>
> It was triggered by (accidentally) double clicking a pagelink ;)
> Unfortunately, can't quite repeat it... at least not clicking with a mouse...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to