[
https://issues.apache.org/jira/browse/GROOVY-8230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul King closed GROOVY-8230.
-----------------------------
> Deadlock in GroovyClassLoader
> -----------------------------
>
> Key: GROOVY-8230
> URL: https://issues.apache.org/jira/browse/GROOVY-8230
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 2.5.0-beta-1
> Reporter: Joel Bredeson
> Assignee: John Wagenleitner
> Priority: Major
> Fix For: 2.5.0-beta-2
>
> Attachments: GroovyClassLoaderDeadlock.txt
>
>
> The GroovyClassLoader.clearCache() method can deadlock when another thread is
> creating a new instance of a class. The clearCache() method locks the
> classCache, then when removing the class, through the InvokerHelper, locks
> the ClassInfo object. When a new instance is created that instance can lock
> the ClassInfo object first, then later request the lock for the classCache
> (This happens when requesting the entry getClassCacheEntry). If the timing
> between the two threads is unlucky a deadlock can occur.
> Relevant stack trace attached.
> Groovy: 2.4.10 groovy-all-2.4.10-indy.jar
> Java: JRE 8u73_64
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)