Increase permgen space

Posted on

Problem :

I am working with tomcat 6.0, and while I am indexing (not while i am starting tomcat), I have a permgen space error.
How could I increase that space??


Solution :

You can use :


to increase the space. But this usually only postpones the inevitable.

You can also enable the PermGen to be garbage collected

-XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

Usually this occurs when doing lots of redeploys. I am surprised you have it using something like indexing. Use virtualvm or jconsole to monitor the Perm gen space and check it levels off after warming up the indexing.

Maybe you should consider changing to another JVM like the IBM JVM. It does not have a Permanent Generation and is immune to this issue.

For tomcat you can increase the permGem space by using


For this you need to create (if not already exists) a file named in tomcat/bin folder and include following line in it

   export JAVA_OPTS="-XX:MaxPermSize=128m"

Reference :

You can also increase it via the VM arguments in your IDE. In my case, I am using Tomcat v7.0 which is running on Eclipse. To do this, double click on your server (Tomcat v7.0). Click the ‘Open launch configuration’ link. Go to the ‘Arguments’ tab. Add -XX:MaxPermSize=512m to the VM arguments list. Click ‘Apply’ and then ‘OK’. Restart your server.

if you found out that the memory settings were not being used and in order to change the memory settings, I used the tomcat7w or tomcat8w in the bin folder.Then the following should pop up:

tomcat monitor

Click the Java tab and add the arguments.restart tomcat

On Debian-like distributions you set that in /etc/default/tomcat[67]

Leave a Reply

Your email address will not be published. Required fields are marked *