JVM crashes when eden space is 100%
You run out of memory. You set the heap size to 2G and the young generation is 500M and old generation is 1500M filling the max 2G it can use (your survivor space is empty but low, they probably too low to get any object from Eden space.
You should try to increase maximum heap size, if you still have issue you will need to monitor your memory usage to check if you don't have any leaks or some process requesting too much new object while the memory usage is already high.
adi
Updated on June 04, 2022Comments
-
adi almost 2 years
I have a production system with a JBoss application server running on JDK 1.6.0_24, JBoss 4.3. Every now and then, the server crashes and a dump file created by the JVM has consistent results:
{Heap before GC invocations=6421 (full 4675): PSYoungGen total 521536K, used 518784K [0xdbc00000, 0xfbc00000, 0xfbc00000) eden space 518784K, 100% used [0xdbc00000,0xfb6a0000,0xfb6a0000) from space 2752K, 0% used [0xfb950000,0xfb950000,0xfbc00000) to space 2752K, 0% used [0xfb6a0000,0xfb6a0000,0xfb950000) PSOldGen total 1572864K, used 1572855K [0x7bc00000, 0xdbc00000, 0xdbc00000) object space 1572864K, 99% used [0x7bc00000,0xdbbfdeb8,0xdbc00000) PSPermGen total 524288K, used 92683K [0x5bc00000, 0x7bc00000, 0x7bc00000) object space 524288K, 17% used [0x5bc00000,0x61682c30,0x7bc00000) 81507.318: [Full GC [PSYoungGen: 518784K->518784K(521536K)] [PSOldGen: 1572855K->1572855K(1572864K)] 2091639K->2091639K(2094400K) [PSPermGen: 92683K->92683K(524288K)], 1.5334976 secs] [Times: user=1.53 sys=0.00, real=1.53 secs] Heap after GC invocations=6421 (full 4675): PSYoungGen total 521536K, used 518784K [0xdbc00000, 0xfbc00000, 0xfbc00000) eden space 518784K, 100% used [0xdbc00000,0xfb6a0000,0xfb6a0000) from space 2752K, 0% used [0xfb950000,0xfb950000,0xfbc00000) to space 2752K, 0% used [0xfb6a0000,0xfb6a0000,0xfb950000) PSOldGen total 1572864K, used 1572855K [0x7bc00000, 0xdbc00000, 0xdbc00000) object space 1572864K, 99% used [0x7bc00000,0xdbbfdeb8,0xdbc00000) PSPermGen total 524288K, used 92683K [0x5bc00000, 0x7bc00000, 0x7bc00000) object space 524288K, 17% used [0x5bc00000,0x61682c30,0x7bc00000) }
for JAVA_OPTS, we've got:
-server
-Xms2048m
-Xmx2048m
-Dsun.rmi.dgc.client.gcInterval=3600000
-Dsun.rmi.dgc.server.gcInterval=3600000
-Dsun.lang.ClassLoader.allowArraySyntax=true
-XX:NewSize=512m
-XX:MaxNewSize=512m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-verbosegc
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-XX:+CMSPermGenSweepingEnabled
-XX:-TraceClassLoading
-XX:-TraceClassUnloading
So it seems to me like 2GB are enough and there is more memory that can be used, so there shouldn't be any problem.
any suggestions?