groovy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alain Stalder <>
Subject Re: Improve Groovy class loading performance and memory management
Date Sat, 28 May 2016 17:38:50 GMT

On 28.05.16 19:15, Alain Stalder wrote:
> Hmn, not sure yet, but looks like the map from the Spring Framework I 
> am using is treating both keys (Class) and values (ClassInfo) as weak 
> references, not sure yet if this could easily be changed...

No, at least no indication of that so far, seems only to determine 
ClassInfo once per class.

But I have an issue where something involving Grape (and grengine) is 
not working with the PoC (but with 2.5.0 master), and it is not related 
to Introspector cleanups and most likely also not to concurrency.

Maybe not enough context, but that's essentially what I get:

Cause: org.codehaus.groovy.control.MultipleCompilationErrorsException: 
startup failed:
     General error during conversion: No signature of method: 
java.util.ArrayList.inject() is applicable for argument types: 
(java.util.LinkedHashMap, groovy.grape.GrapeIvy$_closure1) values: [[:], 

and ClassInfos created before include:

System.out.println("class: " + System.identityHashCode(klazz) +" (" + klazz.getName() +")");

     class: 106639514 (groovy.lang.Binding)
     class: 801851616 (groovy.lang.GroovyObjectSupport)
     class: 1577774013 (groovy.lang.GroovyObject)
     class: 1037324811 (java.lang.String)
     class: 546597920 (java.lang.Comparable)
     class: 177443754 (java.lang.CharSequence)
     class: 1243769281 (groovy.lang.MetaClass)
     class: 1883500253 (groovy.lang.MetaObjectProtocol)
     class: 1084454171 (groovy.grape.GrapeIvy$_closure1)
     class: 545910928 (org.codehaus.groovy.runtime.GeneratedClosure)
     class: 784639758 (groovy.lang.Closure)
     class: 1270168553 (java.lang.Runnable)
     class: 1534969475 (groovy.lang.GroovyCallable)
     class: 2054932187 (java.util.concurrent.Callable)

No idea so far what causes this and how relevant/bad it might be...

View raw message