no minor GC

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.
 
R

Robert Klemme

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?

Maybe your sessions do not expire and they hold on to too much data.
Just a wild guess.

robert
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top