Oracle, uncaught Java exception: java.lang.UnsatisfiedLinkError

This is very common error in java environment. In most cases the problem will be in LD_LIBRARY_PATH variable which is not set properly. Lets show how we can perform diagnostics:

  1. Check trace for more info. The trace can be found in udump directory
  2. Check LD_LIBRARY_PATH set properly i.e. set to $ORACLE_HOME/lib
  3. Check how LD_LIBRARY_PATH variable set inside java
  4. create or replace function get_java_property(p_property varchar2) return varchar2
    as language java name ‘java.lang.System.getProperty(java.lang.String) return java.lang.String’;
    select get_java_property(‘java.library.path’) from dual;

  5. Check that you library actually located in $OH/lib and has proper access rights
  6. Check that your lib bit szie compares to bit size of oracle db. If oracle db is 64 bit than lib must be 64 as well.

Character set conversion problem

Recently we have changed codepage of one of oracle 8.1.7 database from NEE8ISO8859P4 to LV8RST104090. After the change, we have noticed that one in-house application failed with error message “ORA-12703: this character set conversion is not supported”

The problem was that this database used by another UTF8 database through dblink. The application from UTF8 is calling procedure from LV8RST104090 and output parameters cannot be converted. But IN parameters are converted normally.

How we solve the problem. The Simplest method is to use RAW data type which is not automatically converted between databases with different codepages. We have used UTL_RAW package. Change parameter type to RAW and use UTL_RAW.CAST_TO_RAW to convert to raw and
UTL_RAW.CAST_TO_NVARCHAR2,
UTL_RAW.CAST_TO_NUMBER to convert back the parameters.

Signal 11 failure on installing 11gR2 grid infrastructure 32 bit

Recent few weeks I’ve been installing oracle 11g r2 infrastructure (clusterware) 32 bit on vmware workstation. The installation process finished successfully and root.sh is launched, the following error appears:
“Failure with signal 11 from command: /u01/app/grid/bin/ocrconfig -local -upgrade oracle oinstall
Failed to create or upgrade OLR”

I have checked out many solutions, but with no success.

As a last chance, I’ve decided to install 64 grid infrastructure. Installation finished successfully with no errors. So, I believe, that ‘signal 11’ error comes from 32bit version.

Hope, I save some time for someone, trying to resolve problem like this.

OUI starts and after prerequisites check, OUI crashes

From java trace file:

Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x80D7A9C
Function=JVM_RegisterUnsafeMethods+0x18D
Library=C:\DOCUME~1\ab0959\LOCALS~1\Temp\OraInstall2008-03-05_09-25-08AM\jre\1.4.2\bin\client\
jvm.dll

Got this problem on client workstation (win2000prof). Initially we have attempted to start oracle iODS installation, but installer crasged just after prerequisites check by firt ‘next’ button pressed. Then I’ve checked if is possible to start 10.2.0.1 oracle client installation, but things got even worse, installer crashed just after prerequisites check completed with OUI wondow showed up for 1 sec.

What I have checked next with no luck:

  • user is in administrators group
  • path variable less than 1024
  • windows2000 sp4
  • installation folder is simple c:\install
  • we tested to install just after complete restart (no apps running)
  • no other oracle services running as system services
  • no problem with installation packages (tested on my own workstation)

Ive even suspected CPU issue, on this workstation new core2duo cpu (I still remember problems with installer on
Pentium4 😉

With help from oracle support, problem been resolved by removing unused oracle entries from windows registry (unregisted in oraInventory entries)

CAUSE: Windows registry seem corrupted on the Oracle branch