I have a coredmp where all thread stack look normal but one stack shows like this. Can any one tell me possible reason for this? i can see exit is being called from oracle libs, is this issue of oracle? When can this happen?
Thread 3 (process 26454):
#0 0x00002b803ceb54a8 in exit () from /lib64/libc.so.6
#1 0x00002b803bbe93f5 in skgdbgcra () from /home/oracle/product/11g/lib/libclntsh.so.11.1
#2 0x00002b803be9cdec in kpeDbgCrash () from /home/oracle/product/11g/lib/libclntsh.so.11.1
#3 0x00002b803be9c627 in kpeDbgSignalHandler () from /home/oracle/product/11g/lib/libclntsh.so.11.1
#4 0x00002b803bbe64b1 in skgesig_sigactionHandler () from /home/oracle/product/11g/lib/libclntsh.so.11.1
#5 <signal handler called>
> Program terminated with signal 6, Aborted.
There is another stackoverflow link where stack is similar but not the same, but still no clear answer.
This link talks about an Oracle bug, is this the same issue?
Looks like it's an issue on oracle 11g.
DIAG_SIGHANDLER_ENABLED
, DIAG_ADR_ENABLED
, DIAG_DDE_ENABLED
are mostly set at SQLNET.ORA. Having DIAG_SIGHANDLER_ENABLED
will force all diagnostics to be written such as alert logs, trace files, application dumps and that becomes a overload and sometimes the Application stumbles.
To turn off the signal handler and re-enable standard Operating System failure processing, place the following parameter setting in your client side or server side sqlnet.ora file under $ORACLE_HOME/network/admin directory.
DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE
By default this parameter is set to true.
After making any such changes to ADR ie., turning off DIAG_SIGHANDLER_ENABLED
, DIAG_ADR_ENABLED
, DIAG_DDE_ENABLED
, it is recommended to restart the Application after making the setting in sqlnet.ora.