Having the full stack trace of one blocked thread and the blocking thread
would help.  Also, would be helpful to see how the template engine is used
in code if possible.
On Jun 20, 2016 7:48 PM, "lp_forum" <lis...@gmail.com> wrote:

Hi,

I have a very simple single page app using Java 7 + Spring Boot 1.3.3 +
Groovy Template (using Groovy 2.4.6).

The app starts hanging after it starts and gets hit for a while (it can be
as short as just few hours).

The thread dump shows that hundreds of threads are waiting to lock a
java.util.HashMap, like this:

"http-nio-9044-exec-294" daemon prio=10 tid=0x00007f54d0b68000 nid=0x7632
waiting for monitor entry [0x00007f54c99d6000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at
groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:266)
        - waiting to lock <0x0000000786748cd8> (a java.util.HashMap)
        at
groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:254)
        at
groovy.text.markup.MarkupTemplateEngine$TemplateGroovyClassLoader.parseClass(MarkupTemplateEngine.java:252)

This seems similar to GROOVY-4127, but that issue was fixed a long time ago.

If anyone needs, I can send the full thread dump.

Thanks,
Su



--
View this message in context:
http://groovy.329449.n5.nabble.com/GroovyClassLoader-deadlock-in-Groovy-2-4-6-tp5733397.html
Sent from the Groovy Dev mailing list archive at Nabble.com.

Reply via email to