Operating System - HP-UX
1753717 Members
4599 Online
108799 Solutions
New Discussion юеВ

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

 
wcheung
Occasional Contributor

Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

An Oracle OCI application was ported from Solaris to HPUX 11.00.01. The application used POSIX threads and a newly created thread would call OCIServerAttach() to create an access path to a server for OCI operations. However the OCIServerAttach() call never returned and the thread was stuck in findexportsym() in dld.sl as shown in the below stack trace.

(gdb) info thread
* 3 system thread 12725 UDBConnect (UDBSpooling=0x7ed14224, pUDBProc=0x7ed14220
ServiceName=0x40002dc8 "hlrdbsrv", DatabaseName=0x40002c28 "hlrdbsrv", UserN
Password=0x40002cf8 "test", Option={bSQLClear = 1, SelRowCount = 0}, thread_
at /oracle/rs/tianfeng/test/udbcli.c:135
2 system thread 12679 0xc0020658 in findexportsym ()
1 system thread 12675 0x7f65b240 in _lwp_create () from /usr/lib/libpthread.1
(gdb) thread 2
[Switching to thread 2 (system thread 12679)]
#0 0xc0020658 in findexportsym ()
(gdb) bt
#0 0xc0020658 in findexportsym ()
#1 0xc0021bf0 in bind_symbol ()
#2 0xc00219f8 in _shl_bor ()
#3 0xc002c5ec in sp_ok ()
#4 0x7ed31e7c in ?? ()
Error accessing memory address 0x8000000: Bad address.
(gdb) q


Apparently similar code without POSIX threading was able to call OCIServerAttach() successfully. Does anyone know under what conditions a thread would stuck in findexportsym() ? Is the library dld.sl thread-safe ? Thanks in advance for any info or help you can provide.


-wmc
5 REPLIES 5
Michael Schulte zur Sur
Honored Contributor

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

T G Manikandan
Honored Contributor

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

Is the application 32bit or 64 bit.

Please make sure that you are linking the right libraries with it.

If you are running Oracle 8.1.7, then for 64 bit make sure that the LD_LIBRARY_PATH points to $ORACLE_HOME/lib64

ALso make sure to point to $ORACLE_HOME/lib for 32 bit
ranganath ramachandra
Esteemed Contributor

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

this is probably a known bug JAGae28531: when one thread does a dlopen(), dlsym() in another thread hangs. the fix for that one is in PHSS_28869. please see if this patch solves your problem.
 
--
ranga
[i work for hpe]

Accept or Kudo

wcheung
Occasional Contributor

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

Hi Michael, TG and Ranganath,

Thank you all for taking your time to respond to my question/problem. All your replies are very informative as I am new to this forum and also new to the Oracle product. After further investigation of the problem, it turns out to be annapplication problem which overflowed the default stack size (64K) of a thead.


Anyway thanks for all the help.

Rgds,
wmc
T G Manikandan
Honored Contributor

Re: Oracle 8.1.7 - Pthread calling OCIServerAttach stuck in findexportsym() in dld.sl in HPUX 11.00.01

Then you should check the kernel parameters


maxssiz
If you are running a 64 bit applicaiton then increase maxssiz_64

Revert