This week's book giveaway is in the Clojure forum.
We're giving away four copies of Clojure in Action and have Amit Rathore and Francis Avila on-line!
See this thread for details.
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

PermGen Memory issue in WebLogic 10

 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have issue on the permanent generation space which will increase until it hit Java.lang.OutOfMemoryError: PermGen space.


1. The Java.lang.OutOfMemoryError: PermGen space can be solved by increase the MaxPermSize. Is it same if just increase the PermSize without MaxPermSize?

2. Where can get the gc log file if -verbosegc -XX:+PrintGCDetails parameters was added?

3. How to trace unloading of classes by adding parameter -XX:+TraceClassUnloading?

4. What action can be taken if the issue still happen after increasing of MaxPermSize?


Below are some info for the server.

OS Version = Solaris 10
WebLogic Version = WLS 10 MP1
JDK Version = jdk150_11
 
Joe Ess
Bartender
Posts: 9214
9
Linux Mac OS X Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Here is an article on what causes PermGen problems. It links to an article on how to fix them. In my experience, third-party libraries can be the cause (I'm looking at you, Struts 2), so you may be left with no alternative than an occasional shutdown-startup cycle.
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Anyone can help on question below?
Is it mean that the maximum permanent generation size can up to 512MB if we set -XX:PermSize=512m even we did not set the *MaxPermSize*?
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Joe Ess,

Can give some example of what kind of third-party libraries can cause this issue?
 
Nitesh Kant
Bartender
Posts: 1638
IntelliJ IDE Java MySQL Database
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hooihooi lim wrote:Hi,

Anyone can help on question below?
Is it mean that the maximum permanent generation size can up to 512MB if we set -XX:PermSize=512m even we did not set the *MaxPermSize*?


PermSize is the initial permanent generation size. Maximum size is by default 32m for client machines and 64 for servers. In this case, I *think* since you are not defining it, it would be taken equal to PermSize.
In my opinion, it is better to give MaxPermSize instead of PermSize so that you do not take the memory if not required.
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Nitesh Kant wrote:
PermSize is the initial permanent generation size. Maximum size is by default 32m for client machines and 64 for servers. In this case, I *think* since you are not defining it, it would be taken equal to PermSize.
In my opinion, it is better to give MaxPermSize instead of PermSize so that you do not take the memory if not required.


Hi,
Thanks for the info.
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Anyone have experience that the issue will be solved after upgrade WLS from MP1 to MP2?

Ref : http://edocs.bea.com/wls/docs100/issues/known_resolved.html
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Anyone know how to trace unloading of classes with JVM argument -XX:+TraceClassUnloading?
 
Nitesh Kant
Bartender
Posts: 1638
IntelliJ IDE Java MySQL Database
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Deon lim wrote:Hi,

Anyone know how to trace unloading of classes with JVM argument -XX:-TraceClassUnloading?


I am not sure but i dont think there is a way to put all the GC debug messages like these to a file.
The traces like these gets printed on the Standard out stream.
 
Joe Ess
Bartender
Posts: 9214
9
Linux Mac OS X Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Deon lim wrote:Anyone have experience that the issue will be solved after upgrade WLS from MP1 to MP2?
Ref : http://edocs.bea.com/wls/docs100/issues/known_resolved.html


I don't think so. The article I linked explains why. It has to do with the way application servers load classes. They can't automatically release them when an application is redeployed and PermGen space is eventually exhausted. I have seen the same problem in WLS 10.3.
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Can WebLogic 10 MP1 work with JDK6?
 
Joe Ess
Bartender
Posts: 9214
9
Linux Mac OS X Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Here is the list of Supported Operating Systems. Select your OS from that list and you will get a page of supported JDK versions.
 
Per Halvarsson
Greenhorn
Posts: 6
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Since you're running WebLogic I would consider switching to JRockit. It doesn't have permgen issues and the JVM has been optimized for WLS.
 
Deon lim
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Anyone can help on log below?
Is it mean that the class sun.reflect.GeneratedSerializationConstructorAccessor & class sun.reflect.GeneratedMethodAccessor not able to unload?

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1]
[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor15]
[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor91]
[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor27]
[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor56]
[Unloading class sun.reflect.GeneratedMethodAccessor33]
 
Leo Gomes
Greenhorn
Posts: 1
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Deon,

Did you ever manage to find a solution or an explanation for your problem? I'm also seeing this with WLS10.

Thanks,
Leo.
 
H Gu
Greenhorn
Posts: 1
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I wrote an article around my experience around this. It may be helpful and is at http://anshuiitk.blogspot.com/2010/11/excessive-full-garbage-collection.html
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic