Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-dev] Are you getting OutOfMemory Permgen errors?

Hi!

By the time I was seeing the PermGen problem I was using the following:

SET ECLIPSE_VM_OPTS= -Xms312m -Xmx312m -Xverify:none -XX:NewSize=160m -XX:MaxNewSize=160m -XX:SurvivorRatio=6 -XX:PermSize=96m -XX:MaxPermSize=96m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC

At that point, if my memory is not completely bad the error was occuring in either Eclipse or Eclipse + MyEclipse (more often with MyEclipse, but this is quite normal considering that MyEclipse loads some tens plugins).

./alex
--
.w( the_mindstorm )p.

#: Ron Bodkin changed the world a bit at a time by saying (astral date: 4/20/2006 7:37 AM) :#
Aha - the plot thickens. I just had one of these dreaded errors:
java.lang.OutOfMemoryError: PermGen space. I haven't changed the default
permgen space (although I run Eclipse itself with -Xmx512m), nor have I ever
seen this problem before (i.e., I can use Eclipse for hours even days at a
time)...

I am running Eclipse 3.2M6 with AJDT 1.4.0.20060413082832. I am NOT running
WTP(*) nor MyEclipse. The only nonstandard plugin in the mix for me is the
Perforce plugin.

Ron

(*) I used to run WTP but found the stability loss worse than the gain from
an XML editor and I just edit Java options to run/debug Tomcat etc.

_____
From: aspectj-dev-bounces@xxxxxxxxxxx
[mailto:aspectj-dev-bounces@xxxxxxxxxxx] On Behalf Of Ron DiFrango
Sent: Wednesday, April 19, 2006 12:57 PM
To: AspectJ developer discussions
Subject: RE: [aspectj-dev] Are you getting OutOfMemory Permgen errors?
Importance: High

Andy,

Below is my best guess at this.
1) One big Web project.

2a) I have 334 Source [not including JSP's here] files in my project.  I do
have an injar for an external jar file that I weave into.  When the weaving
happens this brings the total to 957.

2b) I have 99 dependant jars [spring, drools, quartz, jstl, etc.]

3) MyEclipse plugin only of course that brings along a lot of baggage.

Now an interesting note, I have not seen this as often since I set the
following:

-XX:MaxPermSize=256M

I do still see it if I do rapid/frequent build/deploy cycles with JBoss
3.2.6 as I think all the funny stuff Hibernate and Spring do to create
dynamic proxies causes it.

I hope this helps.

Ron

_____
From: aspectj-dev-bounces@xxxxxxxxxxx on behalf of Andy Clement
Sent: Wed 4/19/2006 10:09 AM
To: aspectj-dev@xxxxxxxxxxx
Subject: [aspectj-dev] Are you getting OutOfMemory Permgen errors?

I'm interested in any users that are currently seeing this and would
like to help me investigate it?  Non of my test scenarios have caused
it to occur.  If you are able to easily reproduce it, could you
possibly put this in your "non standard compiler options" box (first
page of AspectJ project properties) does it make any difference at
all? (You should probably restart eclipse after doing this to clear
everything out)

-Xset:activateLightweightDelegates=false

I'm not investigating regular OOM problems, just the PermGen one - we
know we still spike in terms of memory required (see
http://www.eclipse.org/ajdt/whatsnew131/ )and that is being addressed
by a separate piece of work.  I just want to get to the bottom of the
PermGen thing.

If you are able to easily recreate it, can you answer (I already have
Jeppe Cramon's answers to these I think):

- If you have multiple aspectj projects in the workspace is it just
one single large project that is causing the problem.  i.e. can you
close all the others, *restart eclipse* and you still see OOM permgen?



- How big is the project causing the problem: roughly how many files?
Does it depend on lots of other jars for types?

I have 334 Soruce [not including JSP's here] files in my project.  I do
have an injar for an external jar file that I weave into.  When the weaving
happens this brings the total to 957.

I have 99 dependant jars [spring, drools, qartz, jstl, etc.]

- Are you running with other eclipse plugins? WTP, MyEclipse stuff?
anything else?

MyEclipse plugin only of course that brings along alot of baggage.


I've googled a bit on permgen and do find it talked about in terms of
WTP/tomcat/MyEclipse.  Given that permgen space is for class metadata,
I'm a little confused as how it can be AJ's fault right now, we don't
spawn funky classloaders during compilation that would cause extra
metadata to hang around, and we don't do class reloading.  I did read
that actively debugging code can sometimes get into this situation as
that does some reloading at times - has anyone noticed this OOM:
permgen happening only after a period of debugging?

Andy.
_______________________________________________
aspectj-dev mailing list
aspectj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-dev



------------------------------------------------------------------------

_______________________________________________
aspectj-dev mailing list
aspectj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-dev



Back to the top