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

Paul King updated GROOVY-7913:
------------------------------
                 Flags:   (was: Important)
    Remaining Estimate:     (was: 26m)
     Original Estimate:     (was: 26m)
           Description: 
org.codehaus.groovy.reflection.ClassInfo:
{code}
private static final GroovyClassValue<ClassInfo> globalClassValue = 
GroovyClassValueFactory.createGroovyClassValue(new ComputeValue<ClassInfo>(){
                @Override
                public ClassInfo computeValue(Class<?> type) {
                        ClassInfo ret = new ClassInfo(type);
                        globalClassSet.add(ret);
                        return ret;
                }
        });
{code}

dynamic load groovy classes will be cached in globalClassValue
can't unload classes
cause java.lang.OutOfMemoryError: PermGen space

  was:
org.codehaus.groovy.reflection.ClassInfo:

private static final GroovyClassValue<ClassInfo> globalClassValue = 
GroovyClassValueFactory.createGroovyClassValue(new ComputeValue<ClassInfo>(){
                @Override
                public ClassInfo computeValue(Class<?> type) {
                        ClassInfo ret = new ClassInfo(type);
                        globalClassSet.add(ret);
                        return ret;
                }
        });


dynamic load groovy classes will be cached in globalClassValue
can't unload classes
cause java.lang.OutOfMemoryError: PermGen space


> ClassInfo.globalClassValue lead  to GroovyClassLoader can't unload classes
> --------------------------------------------------------------------------
>
>                 Key: GROOVY-7913
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7913
>             Project: Groovy
>          Issue Type: Bug
>          Components: class generator
>    Affects Versions: 2.4.6
>            Reporter: chenxiaojie
>
> org.codehaus.groovy.reflection.ClassInfo:
> {code}
> private static final GroovyClassValue<ClassInfo> globalClassValue = 
> GroovyClassValueFactory.createGroovyClassValue(new ComputeValue<ClassInfo>(){
>               @Override
>               public ClassInfo computeValue(Class<?> type) {
>                       ClassInfo ret = new ClassInfo(type);
>                       globalClassSet.add(ret);
>                       return ret;
>               }
>       });
> {code}
> dynamic load groovy classes will be cached in globalClassValue
> can't unload classes
> cause java.lang.OutOfMemoryError: PermGen space



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to