核心转储的原因是什么?来自 oracle lib 的堆栈显示
what is the reason for core dump? stack shows from oracle lib
我有一个 coredmp,其中所有线程堆栈看起来都很正常,但一个堆栈显示如下。任何人都可以告诉我这可能的原因吗?我可以看到正在从 oracle 库调用 exit,这是 oracle 的问题吗?当这种情况发生时,任何人都可以指导我吗?
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.
注:
- Before voting down, can you guys tell me why voting down? I am really clueless as what to check
- Here is another Whosebug link where stack is similar but not same, but still no clear answer
- Link talks about orable bug, Is this same isue?
看起来是 oracle 11g 上的问题。
- 从 Oracle 11g 开始,诊断信息库默认打开。自动诊断存储库 (ADR)
DIAG_SIGHANDLER_ENABLED
、DIAG_ADR_ENABLED
、DIAG_DDE_ENABLED
等参数大多设置为 SQLNET.ORA。
DIAG_SIGHANDLER_ENABLED
将强制写入所有诊断信息,例如警报日志、跟踪文件、应用程序转储,这会导致过载,有时应用程序会出错。
要关闭信号处理程序并重新启用标准操作系统故障处理,请将以下参数设置放在客户端或服务器端 sqlnet.ora 文件的 $[=40= 下]目录。
DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE
默认情况下,此参数设置为 true。
对 ADR 进行任何此类更改后,即关闭 DIAG_SIGHANDLER_ENABLED
、DIAG_ADR_ENABLED
、DIAG_DDE_ENABLED
,建议在 [=42] 中进行设置后重新启动应用程序=].
- 关闭 ADR 参数应该不会对您的应用程序或数据库造成影响。
我有一个 coredmp,其中所有线程堆栈看起来都很正常,但一个堆栈显示如下。任何人都可以告诉我这可能的原因吗?我可以看到正在从 oracle 库调用 exit,这是 oracle 的问题吗?当这种情况发生时,任何人都可以指导我吗?
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.
注:
- Before voting down, can you guys tell me why voting down? I am really clueless as what to check
- Here is another Whosebug link where stack is similar but not same, but still no clear answer
- Link talks about orable bug, Is this same isue?
看起来是 oracle 11g 上的问题。
- 从 Oracle 11g 开始,诊断信息库默认打开。自动诊断存储库 (ADR)
DIAG_SIGHANDLER_ENABLED
、DIAG_ADR_ENABLED
、DIAG_DDE_ENABLED
等参数大多设置为 SQLNET.ORA。
DIAG_SIGHANDLER_ENABLED
将强制写入所有诊断信息,例如警报日志、跟踪文件、应用程序转储,这会导致过载,有时应用程序会出错。
要关闭信号处理程序并重新启用标准操作系统故障处理,请将以下参数设置放在客户端或服务器端 sqlnet.ora 文件的 $[=40= 下]目录。
DIAG_ADR_ENABLED=OFF DIAG_SIGHANDLER_ENABLED=FALSE DIAG_DDE_ENABLED=FALSE
默认情况下,此参数设置为 true。
对 ADR 进行任何此类更改后,即关闭 DIAG_SIGHANDLER_ENABLED
、DIAG_ADR_ENABLED
、DIAG_DDE_ENABLED
,建议在 [=42] 中进行设置后重新启动应用程序=].
- 关闭 ADR 参数应该不会对您的应用程序或数据库造成影响。