Saturday, March 10, 2012

Jrocket and "[WARN] Use of -Djrockit.optfile is deprecated and discouraged"

Hello Technical Family,


In this post, I am going to discuss the Jrocket and its error during the Weblogic Startup. This Error may not impact the install but since it is deprecated - it make sense to fix it. I had to do some hours of research and would not want other people to do the same - hence posting here. What I get out of this - A pure satisfaction that someone out there will read this post and apply the solution. 


The platform is OS= RedHat 5.5 x86_64 with jrockit-jdk1.6.0_29-R28.2.2-4.1.0-linux-x64


Error:


During the Weblogic Server startup - I saw the following error in the logs:


[WARN] Use of -Djrockit.optfile is deprecated and discouraged.


Solution:


This is what I had to do, to get this issue gone from the logs and make Jrocket like what it wants to do.


1- I put the following into the environment variable in weblogic domain environment file.



-XX:+UnlockDiagnosticVMOptions  -XX:OptFile=${COMMON_COMPONENTS_HOME}/modules/oracle.jrf_11.1.1/jrocket_optfile.txt

2- Recreated the jrocket_optfile.txt as :

From:

- oracle/bpel/services/workflow/repos/driver/WFTask
- oracle/bpel/services/workflow/task/model/SystemMessageAttributesTypeImpl.*
- oracle/bpel/services/workflow/task/model/TaskTypeImpl.*
- oracle/bpel/services/workflow/task/model/SystemAttributesTypeImpl.*
- oracle/bpel/services/workflow/repos/Util.*
- oracle/xquery/parser/XPathTokenManager.*



To:

{
match: ["oracle.bpel.services.workflow.repos.driver.WFTask",
"oracle.bpel.services.workflow.task.model.SystemMessageAttributesTypeImpl.",
"oracle.bpel.services.workflow.task.model.TaskTypeImpl.*",
"oracle.bpel.services.workflow.task.model.SystemAttributesTypeImpl.*",
"oracle.bpel.services.workflow.repos.Util.*",
"oracle.xquery.parser.XPathTokenManager.*"],
enable: jit
}

Restart the Weblogic and you just resolved another issue.

Great feeling - right...

Enjoy life as it comes - It will be less of good times and more of bad times - but hey I try to find the refuge in solving the issue as I have yet to see the good time since last 11 years !!


OBIEE 11g Install and "error creating asinstance instance1" Error

Hello Tech World,


In this post, I am going to give you insight of my own created issue. However, it can be helpful. Sometimes, you  come across issues by and accident and this is one of those. The platform is - OS RedHat 5.5 x86_64 OBIEE 11g (11.1.1.5).


Error:


While installing OBIEE 11g, following error displays in the orainventory logs and the configuration fails.


"error creating asinstance instance1"


Cause:


The environment variable was set with the name that the install was trying to create.


Debugging:


In most of the cases - you may not come across this issue as you may not have set this environment variable. I read too much into the installation guide and before even starting the install, I set the ORACLE_INSTANCE variable to what I wanted to create during the install. While doing configuration the configuration thinks that you already have this instance created for OPMN and will not proceed. 


This could be a bug - The install can always check whether that directory or path that is mentioned in the environment variable - exists or not but like a dumb it pops the error and will not proceed.




Solution:


I had to unset the ORACLE_INSTANCE variable to get the install going. To think of it, you can choose a different name than the one is set in the ORACLE_INSTANCE and get the install going - so trivial - but shocking when the error is so illusive.


I thought that it will help the community and less time at Oracle Support.


Hopefully Helps others.


Another day of a tech life.

Weblogic on Linux x86-64 libmuxer Library Error (BEA-280101)

In this post, I will be discussing the Java I/O and performance pack error that is seen in the admin logs of Weblogic. This is Weblogic 10.3.5 on RedHat Linux 5.5 64 bit.


Error:



<Jan 5, 2012 8:10:20 AM PST> <Error> <Socket> <BEA-000438> <Unable to load performance pack. Using Java I/O instead. Please ensure that libmuxer library is in :
####<Jan 5, 2012 8:52:29 AM PST>  <Warning> <Store> <BEA-280101> <amghost1.cup.com> <WLS_Portlet> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1325782349291> <BEA-280101> <The persistent file store "_WLS_WLS_Portlet" is forced to use buffered I/O and so may have significantly degraded performance. Either the OS/hardware environment does not support the chosen write policy or the native wlfileio library is missing. See store open log messages for the requested and final write policies. See the documentation on store synchronous write policy configuration for advice.

Cause:

There are  some libraray those exist in the $WL_HOME/server/native/linux/x86_64 and the Weblogic start is looking those to be in the CLASSPATH. Since the default CLASSPATH (After a Fresh Install) does not have above path, it is looking the libmuxer library in i686 directory. This may be fine if you are running in a  32 bit OS  but on 64 it is in a different place.

Solution:

I had  two options - one - copy those libraries to the path that is available to CLASSPATH - two - add the new path.

I decided the later and changed the CLASSPATH in the environment file as:

From:

LD_LIBRARY_PATH="${WL_HOME}/server/native/linux/i686${CLASSPATHSEP}${LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH

TO:

LD_LIBRARY_PATH="${WL_HOME}/server/native/linux/x86_64${CLASSPATHSEP}${WL_HOME}/server/native/linux/i686${CLASSPATHSEP}${LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH

After above change the result from the admin log is:


####<Jan 5, 2012 9:21:19 AM PST> <Info> <Socket> <ebiz1.cup.hp.com> <WLS_Portlet> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1325784079574> <BEA-000447> <Native IO Disabled. Using Java IO.>




4110978> <BEA-280008> <Opening the persistent file store "_WLS_WLS_Portlet" for recovery: directory=/home/oracle/SOA/Middleware/user_projects/domains/base_domain/servers/WLS_Portlet/data/store/default requestedWritePolicy="Direct-Write" fileLockingEnabled=true driver="wlfileio3".>

####<Jan 5, 2012 9:21:19 AM PST> <Info> <Socket> <ebiz1.cup.hp.com> <WLS_Portlet> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1325784079574> <BEA-000447> <Native IO Disabled. Using Java IO.>

Please Note that I also changed the I/O to Direct Write from the Admin Console and that is what is reflected here. I did this change because I noticed that this was better in this particular scenario whereas this is not recommended. I do not go with recommendations - I do my test and choose the setting that is appropriate to my environment. This was better here but cannot be used as a rule of thumb. Here the SAN and the latency was not that high. May be my volume was not that high. Please do some testing in the DEV environment and choose the best setting for your environment.

Issue Resolved !!