camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zoran Regvart (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CAMEL-10732) Remove from all caches when Groovy script is removed from Camel script cache
Date Fri, 20 Jan 2017 19:32:26 GMT
Zoran Regvart created CAMEL-10732:
-------------------------------------

             Summary: Remove from all caches when Groovy script is removed from Camel script
cache
                 Key: CAMEL-10732
                 URL: https://issues.apache.org/jira/browse/CAMEL-10732
             Project: Camel
          Issue Type: Bug
          Components: camel-groovy
    Affects Versions: 2.18.1, 2.17.4, 2.16.6
            Reporter: Zoran Regvart
            Assignee: Zoran Regvart


Camel's GroovyLanguage maintains a cache of Groovy class scripts up to maximum of 1000 entries.
When the limit of 1000 entries is reached the LRU cache removes the least used ones.
The LRU cache removes only the Script classes it does not remove all the references that still
remain to that class and this causes a memory leak.
The remaining references are in Groovy metaclass registry, Groovy ClassInfo reflection support
cache and Java Beans Introspector cache.
All of these can be easily removed on removal from the Camel LRU script cache by invoking
{{org.codehaus.groovy.runtime.InvokerHelper.removeClass}}.

See [Groovy and Camel PermGen troubles with Java 1.7|http://mail-archives.apache.org/mod_mbox/camel-users/201701.mbox/%3C1484927208612-5792865.post%40n5.nabble.com%3E]
on the camel-users mailing list.



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

Mime
View raw message