You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (Closed) (JIRA)" <ji...@apache.org> on 2011/10/18 00:23:10 UTC

[jira] [Closed] (TAP5-1650) On a cold start with a large number of incoming requests, Tapestry can deadlock inside PlasticClassLoader/PlasticClassPool

     [ https://issues.apache.org/jira/browse/TAP5-1650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Howard M. Lewis Ship closed TAP5-1650.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 5.3

Appears fix as of 5.3-beta-20.
                
> On a cold start with a large number of incoming requests, Tapestry can deadlock inside PlasticClassLoader/PlasticClassPool
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: TAP5-1650
>                 URL: https://issues.apache.org/jira/browse/TAP5-1650
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: plastic
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>            Priority: Critical
>              Labels: deadlock, performance
>             Fix For: 5.3
>
>         Attachments: tapestry-deadlock-fix-1.patch
>
>
> Discovered during load testing; the scenario is a cold start for the application then hitting it with large numbers of concurrent requests with no ramp up. The deadlocks involve two methods:
>      PlasticClassLoader.loadClass()
>      PlasticClassPool.getClassInstantiator()
> A proper solution would to make these methods share a single explicit Lock, rather than be synchronized.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira