什么是核心转储的原因?堆栈显示从oracle lib [英] what is the reason for core dump? stack shows from oracle lib

查看:684
本文介绍了什么是核心转储的原因?堆栈显示从oracle lib的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个coredmp,其中所有的线程堆栈看起来正常,但一个堆栈显示这样。任何人都能告诉我这个可能的原因吗?我可以看到exit是从oracle libs调用,是这个问题的oracle?

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? Can any one guide me when this can 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.

注意:



  1. 在投票之前,你能告诉我为什么投票吗?

  2. 这里是另一个 stackoverflow link 其中stack是相似但不相同,但仍然没有明确的答案

  3. 链接谈论orable bug,这是同样的事吗?

  1. Before voting down, can you guys tell me why voting down? I am really clueless as what to check
  2. Here is another stackoverflow link where stack is similar but not same, but still no clear answer
  3. Link talks about orable bug, Is this same isue?



推荐答案

看起来这是一个关于oracle 11g的问题。

Looks like it's an issue on oracle 11g.


  1. 从Oracle 11g开始,诊断存储库默认开启。自动诊断存储库(ADR)参数,例如 DIAG_SIGHANDLER_ENABLED DIAG_ADR_ENABLED DIAG_DDE_ENABLED 大多设置在SQLNET.ORA。

  1. Starting from Oracle 11g Diagnostic Repositories are turned on by default. Automatic Diagnostic Repository (ADR) Parameters such as DIAG_SIGHANDLER_ENABLED, DIAG_ADR_ENABLED, DIAG_DDE_ENABLED are mostly set at SQLNET.ORA.

DIAG_SIGHANDLER_ENABLED 会强制写入所有诊断信息,跟踪文件,应用程序转储和成为一个重载,有时候应用程序崩溃。

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.


  1. 信号处理程序并重新启用标准操作系统故障处理,请将以下参数设置放在$ ORACLE_HOME / network / admin目录下的客户端侧或服务器端sqlnet.ora文件中。

  1. 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


默认情况下,此参数设置为true。

By default this parameter is set to true.

即关闭 DIAG_SIGHANDLER_ENABLED DIAG_ADR_ENABLED DIAG_DDE_ENABLED 建议在sqlnet.ora中进行设置后重新启动应用程序。

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.


  1. 关闭ADR参数不应导致影响您的应用程序或数据库。

这篇关于什么是核心转储的原因?堆栈显示从oracle lib的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆