We use Camel 2.17.3 on a Tomcat 8.5.8 with Java 7. Our project has about 30 routes with a peak throughput of 2000 requests per minute in total. In one route we used two Groovy expressions for message body transformation. After the update to 2.17.3 we saw a constant growth of the perm gen usage - ~35 MB per day. Analysis of heap dumps and jmap -permstats showed that every call to the route led to the creation of a Script<xxxx> class by the GroovyClassLoader. The class definitions accumulated in the perm gen space until it was full and the server got into trouble.
Removing the Groovy expressions solved the immediate problem, but I think this should not be the final solution. ;-) Would it be possible to cache the parsed script for each expression to avoid the pile up of class definitions? Regards Christoph Thelen -- View this message in context: http://camel.465427.n5.nabble.com/PermGen-Leak-when-using-Groovy-expressions-tp5793044.html Sent from the Camel - Users mailing list archive at Nabble.com.
