Tuesday 26 July 2011

JRockit GC Option Enable issue

One of the WebLogic Server instance is not starting due to passing the java options, which are not supported to jrockit.

My environemnt requirement is that, I need to enable the verbose:gc for my production servers and I have tried to enable by giving the below java options in a customized script which inturn calls start script. After my try in development test server that was failed to start.


#JAVA_OPTIONS="$JAVA_OPTIONS -DDebugSecurityAtn=true -DDebugSSL=true"
JAVA_OPTIONS="${JAVA_OPTIONS} -XX:+HeapDumpOnOutOfMemoryError -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:${LOGDIR}/gc.log"

On the server logs it kicked the rejected message "illegal java option" error in weblogic.log file and on the other hand gc.log file is not created, I have found in googling that we are using jrockit so these "-verbose:gc, Xloggc:gc.log,etc options are NOTsupporting which are supported by Sun JDK hotspot JVM. and server is not coming up. What made missing?? You think think!! I got an idea, of-course it is a doubt wheather this JDK options are same or different for JRockit JVM??

After struggling on google for few minutes…

Finally I have fixed this issue by giving the proper jrockit's supported GC options (verbose: memory, Xverboselog:gc.log etc)

It Works out the below options and its created gc.log under logdir path:

#JAVA_OPTIONS="$JAVA_OPTIONS -DDebugSecurityAtn=true -DDebugSSL=true"
JAVA_OPTIONS="$JAVA_OPTIONS -DDebugSecurityAtn=true -DDebugSSL=true -Xverbose:memory -Xgcprio:pausetime
-Xverboselog:${LOGDIR}/gc.log"


Now the desired sample gc.log generated as it is shown below:

[INFO ][memory ] [YC#84] 69.846-69.862: YC 589972KB->562334KB (1048576KB), 0.016 s, sum of pauses 15.527 ms, longest pause 15.527 ms.
[INFO ][memory ] [YC#85] 70.223-70.234: YC 596537KB->566915KB (1048576KB), 0.011 s, sum of pauses 10.404 ms, longest pause 10.404 ms.
[INFO ][memory ] [YC#86] 70.525-70.535: YC 602423KB->572377KB (1048576KB), 0.010 s, sum of pauses 10.230 ms, longest pause 10.230 ms.
[INFO ][memory ] [YC#87] 70.828-70.839: YC 605159KB->575545KB (1048576KB), 0.011 s, sum of pauses 10.772 ms, longest pause 10.772 ms.


conclusion: all jdk's GC options does not supported/compatible with jrockit's gc options

2 comments:

  1. what tool do you use to read jrockit gc logs in offline mode?

    ReplyDelete
  2. i am having real trouble finding a tool for JR 1.6 gc logs...

    ReplyDelete