Monday, October 4, 2010

OutOfMemoryError in Compile time Issue

WebLogic server startup causing the OutOfMemoryError when it is compling new jar file

I have deployed the ear file(it contains jars,wars) and I was trying to restart the application on one managed server,The managed server started successfully with running mode but startWeblogic.OUT file having the "OutofMmoryError" error. so i need to fix as i am on prod deploy call.

I have tried to resolve by checking the disk space utiliazation,Jdk's min&max memorey arguments,heapdump etc ...everywhere it looks good, eventhought I have restarted the server after cleared cache ,space ...still the error is coming up ...

found that the java is trying to compile the new jar file, and it was failing to compile while deploying it in server startup.





I have tried many ways to resolve it ...but it didn't success it.

After i had compared the admin console with the another prod backup environment's admin console which is working fine.

Found that there is a Java Compiler path different in admin console when we compared with other environment's admin console for that perticular server instance.
so the compiler is not supporting while compiling perticular jar file
actually *ejb.jar file was trying to deploy and compliling after we restarted the server so that the perticular code is not supporting.

I have updated the path from /usr/j2se142_08/bin/javac to /java/j2se142_11/bin/javac

then the server came up successfully after bounced the server without any error.


for this, i have created a problem ticket and resolved it finally, it is a small issue but taken much time to trouble shoot the problem ...

JRokit 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


Ref Site for Jrockit:
http://weblogic-wonders.com/weblogic/2010/09/03/why-and-how-oracle-jrockit/
Ref Site for JDK and JRockit's options:
http://www.tagtraum.com/gcviewer-vmflags.html#sun.loggc

Sunday, October 3, 2010

Semaphore issue in WebServer

In most of the Web Server's environments are in the De-Militarized Zone(DMZ)architecture as front end for weblogic. So the front tier is having the setup for the proxy plug-in with one of the WebServers (HTTP). This post is about Sunone WebServer proxying for WebLogic web-tier.

The issue encountered when one of the physical site's single sign on page is failed to display. There are many users on that site, they need immediate resolution for the issue. Because in the e-commerce world every minute is precious each hit is valuable every delay of operation that causes losses in dollars. Keeping in this in mind acted instantly the producing support team. The team focused in the each log that related to that site and its SSO web instance. finally the team found that whole causing flaw is in a webserver agent log, it is an issue related to processes the Max semaphore setting on one server, while bringing up the web instances."Failed to initialize the siteminder agent error came while starting sun web server".

After a while the smart WLA, wearing the thinking cap, found the Resolution as "Increased the max semaphore limit" on the Unix machine has the current setting as (200) changed to 512 using the below given command sequel.

Here we go ... Now let see how the 'prctl' Unix commands helps us to create or add the fragmentation size limit to 512:

$ prctl -t priv -n project.max-sem-ids -v 512 -e deny $$

Below command to delete the fragmentation size limit to 200: (delete the old setting ,after/before adding the new size)


$ prctl -t priv -n project.max-sem-ids -v 200 -x $$

Below command is to list all the semaphore settings:

$ prctl -n project.max-sem-ids $$

process: 25277: bash
NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
project.max-sem-ids
privileged 512 - deny -
system 16.8M max deny -

The similar issue is identified in Apache WebServer associated with CA SiteMinder Agent service too.
Hope this will give basic idea about the semaphore issue and its resolution.

Keep reading the blog!! enjoy!! write back to us with your issues on WebLogic Administration issues!!!

Source from : Smart WLA Sarangapani.  M
Reference:

http://www.bigadmins.com/solaris/how-to-tune-kernel-parameters-in-solaris-10/

Search This Blog

Loading...

Content of System Administration

ITIL V3 Foundation Certification books