[ https://issues.apache.org/jira/browse/GROOVY-7621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15148240#comment-15148240 ]
Jochen Theodorou edited comment on GROOVY-7621 at 2/16/16 8:05 AM: ------------------------------------------------------------------- Can we just close this bug at the 2.4.6 release? Or is there still something left to do? was (Author: blackdrag): Can we just close this bug, at the 2.4.6 release? Or is there still something left to do? > Memory Leak (metaClassRegistry) unable to remove metaClass based on instances > ----------------------------------------------------------------------------- > > Key: GROOVY-7621 > URL: https://issues.apache.org/jira/browse/GROOVY-7621 > Project: Groovy > Issue Type: Bug > Components: groovy-runtime > Affects Versions: 2.3.7 > Environment: Running from Eclipse, JBoss with jdk 1.6 > Reporter: Kimball C Sampson > > I'm using the GroovyScriptEngine in a web server environment where the > scripts are provided properties on-the-fly from database objects. This is > done by implementing script.metaClass.propertyMissing. When I return a > value, I set the metaClass to give the returned value even more > sub-properties. After processing 100k records or so, I run out of memory. I > tried to write code to remove entries from the metaClassRepository, but > there's no way to do it for an object instanced based metaClass. Also, I've > outputed the GroovySystem.metaClassRepository.iterator().size() and it kept > growing. The values are out of scope so they should get garbage collected, > but the metaClasses aren't getting cleaned up. > The workaround to this problem was to implement a groovy Proxy, though, I > liked the metaClass solution better. -- This message was sent by Atlassian JIRA (v6.3.4#6332)