You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@xmlbeans.apache.org by as...@daimler.com on 2010/08/19 12:00:35 UTC

java.lang.OutOfMemoryError: PermGen space

Hi,

In our app we have in rare cases the following error:

java.lang.OutOfMemoryError: PermGen space
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at 
com.teradyne.ds.net.GrUrlClassLoader.defineClass(GrUrlClassLoader.java:321)
        at 
com.teradyne.ds.net.GrUrlClassLoader.access$100(GrUrlClassLoader.java:54)
        at 
com.teradyne.ds.net.GrUrlClassLoader$1.run(GrUrlClassLoader.java:265)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
com.teradyne.ds.net.GrUrlClassLoader.findClass(GrUrlClassLoader.java:258)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at pkg.StepDefsDocumentImpl$StepDefsImpl.getStepDefList(Unknown 
Source)

Of course we can increase the -XX:MaxPermSize from currently 80M to 128M 
or above, but i'm wondering if there is a possibility to decrease the 
permGen space consumption by finetuning xmlBeans in some way.

We are using XMLGBeans 2.4.0

Kind Regards
Michael


If you are not the intended addressee, please inform us immediately that you have received this e-mail in error, and delete it. We thank you for your cooperation.  

RE: java.lang.OutOfMemoryError: PermGen space

Posted by Cezar Andrei <ce...@oracle.com>.
Michael,

 

The permgen memory contains the class definitions, since you're probably using a big number of classes they get loaded into permgen.

You can optimize the size by using custom classloaders with XMLBeans, which most likely is more complicated than increasing the permgen size and depends very much on the application, but XMLBeans doesn't do this by default. 

 

Cezar

 

  _____  

From: as.bauschert@daimler.com [mailto:as.bauschert@daimler.com] 
Sent: Thursday, August 19, 2010 5:01 AM
To: user@xmlbeans.apache.org
Subject: java.lang.OutOfMemoryError: PermGen space

 


Hi,

In our app we have in rare cases the following error:

java.lang.OutOfMemoryError: PermGen space
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at com.teradyne.ds.net.GrUrlClassLoader.defineClass(GrUrlClassLoader.java:321)
        at com.teradyne.ds.net.GrUrlClassLoader.access$100(GrUrlClassLoader.java:54)
        at com.teradyne.ds.net.GrUrlClassLoader$1.run(GrUrlClassLoader.java:265)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.teradyne.ds.net.GrUrlClassLoader.findClass(GrUrlClassLoader.java:258)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at pkg.StepDefsDocumentImpl$StepDefsImpl.getStepDefList(Unknown Source)

Of course we can increase the -XX:MaxPermSize from currently 80M to 128M or above, but i'm wondering if there is a possibility to decrease the permGen space consumption by finetuning xmlBeans in some way.

We are using XMLGBeans 2.4.0

Kind Regards
Michael

If you are not the intended addressee, please inform us immediately that you have received this e-mail in error, and delete it. We thank you for your cooperation.