This is an older one. I’ve only verified it with Grails v1.1, but it may still exist. It’s frustrating enough that it warrants a post, though.
Is your app slowing to a crawl due to an amazing Permgen leak? I mean big like 400+ MB of Permgen usage and 50k loaded classes. Well if you happen to be abusing ConfigSlurper, I may have a solution for you.
Are you doing something like this?
for (int i = 0; i < 50000; i++) {
ConfigObject config = new ConfigSlurper().parse("foo = bar");
print " ${i}"
}
Well stop doing it. You’re leaking classes. Anything that you need to update at runtime that often should not be in the configuration file. Use JMX MBeans or a rest web service to allow updates instead.
Thanks to everyone on this email chain for resolving this issue.