Hello,
PermGen is the memory repository of the container. There can be two causes to your problem:
1. Your application ate all the available memory, then yes increasing PermGen space is the way to go.
2. You have some objects left in memory from your previous deploy that are not eligible for garbage collection. That one is way harder to deal with. It happens mainly when you have an asynchronous thread still running from previous deployment referencing some other objects. To deal with that you have to make your asynchronous thread check if there object references are still valid using a way or another (there's no perfect way. In one of my project we had to rely on an IllegalStateException the container was raising when accessing a specific object).
Regards,
~ Simon
On 11/27/06, Julian Ray <julianjray@...> wrote:
Hmmm, run into this one before. Best idea is to change to
JRockit and this problem never happens again :) Next best is to change the
permgen space using -XX:MaxPermSize=256m
From: kindsol [mailto:kindsol@...]
Sent: Monday, November 27, 2006 1:07 PM
To:
users@...
Subject: Newbie: OutOfMemoryError: PermGen
space Question
Hey now,
I just upgraded my JSF release to
MyFaces w/ facelets over the weekend. My web app has been working for about a
year without fail in a production environment.
Things are converting over fairly
nicely, but after my web application runs for a while (main page refreshes every
minute) I get the following exception:
09:53:47,564 ERROR [[Faces
Servlet]] Servlet.service() for servlet Faces Servlet threw exception
java.lang.OutOfMemoryError:
PermGen space
Are there any known issues like
this? Has anyone experienced this
problem when they switched over?? I could not find anything in the mail list
archive.
Any help would be greatly
appreciated!
-KindSol