Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Help need in GarbageCollection , not running as expected

 
Sunny Kumar Kalra
Greenhorn
Posts: 15
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
We are using weblogic 9.22 and Java 5 with below server parameters

SERVER_JAVA_OPTIONS="-Dweblogic.Debug=weblogic.JTAJDBC,weblogic.JTA2PC,weblogic.JTAXA,weblogicJTAResourceHealth -Dweblogic.Debug=weblogic.ejb20.cmp.rdbms.verbose,weblogic.ejb20.cml.rdbms.debug -Ddebug.methodNames=true -Ddebug.lineNumber=true"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dweblogic.webservice.client.ssl.trustedcertfile=${SERVER_WEBLOGIC_HOME}/server/lib/trusted.crt"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Djava.protocol.handler.pkgs=weblogic.webservice.client"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dweblogic.webservice.client.ssl.strictcertchecking=false"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dweblogic.security.SSL.enforceConstraints=false"
#SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Djavax.net.ssl.trustStore=/apps/opt/weblogic/config/cabpool/some_keystore"
#SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dssl.debug=true"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dweblogic.webservice.verbose=false"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+UseConcMarkSweepGC"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+UseParNewGC"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+CMSParallelRemarkEnabled"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:CMSInitiatingOccupancyFraction=60"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+UseCMSInitiatingOccupancyOnly"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:ParallelGCThreads=8"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:PermSize=512m"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:MaxPermSize=512m -d64 -Xss512k"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:NewSize=192m"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:MaxNewSize=192m"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+PrintGCDetails"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -XX:+PrintGCTimeStamps"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Xloggc:/abcdrive/mydomain/garbcollector.log"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dcom.sun.management.jmxremote.port=8885"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dcom.sun.management.jmxremote.ssl=false"
SERVER_JAVA_OPTIONS="${SERVER_JAVA_OPTIONS} -Dcom.sun.management.jmxremote.authenticate=false"

Heap Size is 4GB

According to CMSInitiatingOccupancyFraction=60 , GC should work when reaching 60% of the memory. But that's not happening instead memory consumption goes above 4GB then GC works and memory comes down to 500MB ,during this our GUI screen hangs for few seconds.

Could somebody please help me in this ?
 
Paul Clapham
Sheriff
Posts: 21316
32
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sunny Kumar Kalra wrote:According to CMSInitiatingOccupancyFraction=60 , GC should work when reaching 60% of the memory.


That isn't what I read in Tuning Garbage Collection with the 5.0 Java[tm] Virtual Machine, section 5.4.7. You'll notice it doesn't describe the value of that property as "X% of the memory". Instead it says

A concurrent collection will also start if the occupancy of the tenured generation grows above the initiating occupancy...

 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic