G
gmh
I have a web-based Java application running under Tomcat 5.0.16,
started with the following JVM options:
-Xms128m
-Xmx2304m
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=<port>
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.awt.headless=true
-Dsun.net.client.defaultReadTimeout=600000
-Dsun.net.client.defaultConnectTimeout=120000
-XX:+HeapDumpOnOutOfMemoryError
-Djavax.net.ssl.trustStoreType=PKCS12
-Djavax.net.ssl.trustStore=/opt/validation/xxxx.xxx
-Djavax.net.ssl.trustStorePassword=xxxxxx
-Xloggc:/home/gmh2441/gc.dat
-d64
-server
(my JVM version is 1.5.0_11 (64 bit))
In monitoring the application, both with jconsole (from JDK 1.5) and
looking at the garbage collection log, I have seen that after several
days of usage, there are no longer any minor GCs taking place; it
appears, from the jconsole graph, that objects go straight from Eden
space to tenured space, and the GC takes place there. I see this in
the GC log as after those several days, there are no minor GCs listed
in my log, only full GCs. As far as I know, there are no explicit
calls to System.gc() in the application. I know that using RMI causes
a full GC every minute by default, but I'm seeing too many full GCs
for this to be the case. What does this lack of minor GCs indicate?
Thanks!
Lynn.
started with the following JVM options:
-Xms128m
-Xmx2304m
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=<port>
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.awt.headless=true
-Dsun.net.client.defaultReadTimeout=600000
-Dsun.net.client.defaultConnectTimeout=120000
-XX:+HeapDumpOnOutOfMemoryError
-Djavax.net.ssl.trustStoreType=PKCS12
-Djavax.net.ssl.trustStore=/opt/validation/xxxx.xxx
-Djavax.net.ssl.trustStorePassword=xxxxxx
-Xloggc:/home/gmh2441/gc.dat
-d64
-server
(my JVM version is 1.5.0_11 (64 bit))
In monitoring the application, both with jconsole (from JDK 1.5) and
looking at the garbage collection log, I have seen that after several
days of usage, there are no longer any minor GCs taking place; it
appears, from the jconsole graph, that objects go straight from Eden
space to tenured space, and the GC takes place there. I see this in
the GC log as after those several days, there are no minor GCs listed
in my log, only full GCs. As far as I know, there are no explicit
calls to System.gc() in the application. I know that using RMI causes
a full GC every minute by default, but I'm seeing too many full GCs
for this to be the case. What does this lack of minor GCs indicate?
Thanks!
Lynn.