我的程序最近崩溃了下面的堆栈;
Program terminated with signal 7, Bus error.
#0 0x00007f0f323beb55 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007f0f323beb55 in raise () from /lib64/libc.so.6
#1 0x00007f0f35f8042e in skgesigOSCrash () from /usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
#2 0x00007f0f36222ca9 in kpeDbgSignalHandler () from /usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
#3 0x00007f0f35f8063e in skgesig_sigactionHandler () from /usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
#4 <signal handler called>
有人可以告诉我,我应该检查我的代码以避免这种情况吗?或者这是oracle应该解决的问题吗?
答案 0 :(得分:2)
BUS错误的主要原因围绕无法访问的内存。这可能是由于很多原因: -
答案 1 :(得分:0)
尝试将以下内容添加到 $ ORACLE_HOME / network / admin / *。ora 文件
DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE
这听起来像是Oracle问题
还有oracle的库似乎是由intel编译器编译的。