> From: Jim [mailto:[EMAIL PROTECTED] 
> Subject: Re: PermGen Out of memory exception
> 
> To address your rhetorical question :) , this issue is a 
> mess to research.

Which is why it should be done before deployment...

> it can be intimidating to be pointed at a 21 page
> Sun white paper

Try this one first:
http://java.sun.com/j2se/1.5.0/docs/guide/vm/gc-ergonomics.html

Unfortunately, it does not address class-heavy situations, such as app
servers.

> http://www.jroller.com/agileanswers/entry/preventing_java_s_java_lang,

> which suggests upgrading Tomcat, or switching to JRockit, or 
> upgrading the JVM.

Switching to JRockit only masks the problem temporarily, since it
doesn't have a separate space for instances of java.lang.Class; do
enough app reloads with JRockit, and you will run into the problem.
We've also found other significant issues with JRockit, so I can't
recommend it.

> http://my.opera.com/karmazilla/blog/2007/03/15/permgen-strikes-back

This one article is the source of much misinformation.  It's unfortunate
that the author has decided his conclusions are the only possible ones
that explain the symptoms, regardless of reality.

> The fallacy's just not obvious, and there's no simple authority 
> on this common issue.

Well, actually there is - look at the HotSpot JVM code, which is freely
available.  Of course, there are side effects ("My brain hurts!" "It
will have to come out." :-).

> Perhaps the Tomcat FAQ on memory-issues could be fleshed 
> out/updated?  

This specific item is already in the Tomcat FAQ:
"If you have a lot of servlets or JSP's, you may need to increase your
permanent generation. By default, it is 64MB. Doubling [sic] it to be
-XX:MaxPermSize=256m might be a good start."

> an explicit contrary statement in the FAQ would be helpful

This article linked to from "Your classloaders are not being garbage
collected" seems to cover pretty much everything you've asked for.  For
reference, it points to the following location:
http://opensource2.atlassian.com/confluence/spring/pages/viewpage.action
?pageId=2669

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY
MATERIAL and is thus for use only by the intended recipient. If you
received this in error, please contact the sender and delete the e-mail
and its attachments from all computers.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to