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:
- Check trace for more info. The trace can be found in udump directory
- Check LD_LIBRARY_PATH set properly i.e. set to $ORACLE_HOME/lib
- Check how LD_LIBRARY_PATH variable set inside java
- Check that you library actually located in $OH/lib and has proper access rights
- 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.
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;
Raw devices support in oracle db 12
According to some info from oracle support. Block devices will not be supported from next version of oracle – 12. Seems that oracle completely moves to ASM.
At this moment, oracle RAC 11.2 installer does not allow to use block/raw devices at installation phase. Later one can change location of voting disks and ocr to block devices. This will work on linux only.
note: it’s not possible to store voting files on both ASM and block devices
To move voting files use:
crsctl replace votedisk {+asm_disk_group | path_to_voting_disk}
For ocr:
ocrconfig -replace current_OCR_location -replacement new_OCR_location
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.
First LVOUG conference

LVOUG group conference is announced! This is first conference in this group history. Conference is organized in two sessions, scheduled on 27 mart 2009, from 13:00 to 18:30, in Hotel Monika, Elizabetes iela 21, Riga. More information on link
I’m also happy to take participation in this conference, trying to make fun, running oracle database with noarchivelog mode and applying different crash and recovery methods
Unable to install EM GridControl 10.2.0.3 oms on rhel5 (all 64bit)
Ive experienced problem with installing em gridcontrol oms 10.2.0.4 64bit on redhat linux 5 64bit. Configuration assistant was unable to start web server with error finding libdb.so.2 library.
We have attemted to install different libs with no success. After few hours of experiments we have decided to use rhel4. It seems that rhel 5 is not supported yet.
Few notes on ‘Advanced Oracle Troubleshooting Seminar’ with Tanel Poder in Latvia.
On 21 November 2008, occurred long awaited event in Latvia – Advanced Oracle troubleshooting seminar with Tanel Poder (http://blog.tanelpoder.com/seminar/). The seminar was arranged by Affecto Latvia and Oracle University, lasted 2 days, and collected about 30-40 participants .
Tanel started with the basics and continued with more advanced things touching practically every aspect of oracle troubleshooting. Advanced, in this context, means is what you do when all available oracle tools failed to show where the problem is. In this situation, Tanel proposing to troubleshoot oracle as standard UNIX application, perform traces and stack dumps, providing amazing information about what is what within stack trace.
Another amazing thing is to see how very skilled professionals are working. I see this as very good opportunity to learn. Here he is showing fast and efficient way to deal with problems using his own custom build scripts. This approach is really accelerate process of diagnostics, especially when you are consulting professional with limited access to production servers and environment. But I think, this approach will be very useful for DBA as well, since for High Availability systems it’s very important to reduce impact on system as fast as possible, and for this purpose, systematic approach and planned environment is very important.
I’ve personally very inspired by Tanel’s work and dedication and would like to thank you for great work and hope to see you in Riga again, with 3-5 extended seminar. Also, would like to thank Affecto Latvia and OU, that made this event possible, here, in Riga.
10.2.0.3 v$session reports wrong blocking sid
When resolwing locking situations using v$session dynamic view, be careful to not to kill wrong session. As appears, v$session “blocking_session” column reports incorrect sid. To obtain correct value, substract 1 from reported sid.
This is bug 5481650 which is resolved in 10.2.0.4
How to check free space in ASM
1. Connect to asm instance:
select name, state, total_mb, free_mb from v$asm_diskgroup;
NAME STATE TOTAL_MB FREE_MB
—————————— ———– ———- ———-
ORADATA MOUNTED 65536 53439
2. Using Grid Control
Go to asm host and select asm instance. Go Administration tab and input asm administration password:
3. Using ASMCMD tool
Please make sure to setup ORACLE_SID and ORACLE_HOME environment variables to ASM instance.
-bash-3.2$ asmcmd -p
ASMCMD [+] > du
Used_MB Mirror_used_MB
12011 12011
ASMCMD [+] >or run
lsdg command
State Type Rebal Unbal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name
MOUNTED EXTERN N N 1024 4096 1048576 40960 37628 0 37628 0 ORADATA/
MOUNTED EXTERN N N 1024 4096 1048576 32768 32675 0 32675 0 ORADATA1/
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
