ITPub博客

首页 > 数据库 > Oracle > ORA-600[kqlnrc_1]错误分析及处理

ORA-600[kqlnrc_1]错误分析及处理

原创 Oracle 作者:Jet_Zhang 时间:2015-06-10 11:29:23 0 删除 编辑
通常来说ORA-600的错误为bug的可能性很大,但是并不是说碰到ORA-600的错误就一定是bug引起的。比如说这次分析的ORA-600错误,就不能归结于bug。不过碰到ORA-600的错误总是会让人心紧一下的~o~

具体错误是这样的,在alert log里记录了一个ORA-600 [kqlnrc_1]的错误:
  1. ORA-00600: 内部错误代码, 参数: [kqlnrc_1], [0x70000082DDC1770], [], [], [], [], [], [], [], [], [], []
  2. Incident details in: /u01/oracle/base/oracle/diag/rdbms/lisdbp/lisdbp1/incident/incdir_132441/lisdbp1_ora_31719550_i132441.trc
通常发生ORA-600错误都会有一个相应的trace跟踪文件,所以发现ORA-600的错误后,也不用紧张,而是要先仔细分析下这个trace文件。在这个案例中,我们发现除了[kkqlnrc_1]这个错误参数后面,还有第二个错误参数[0x70000082DDC1770],猜测可能是内存地址之类的值,打开trace文件,用这个参数值搜索:
  1. LibraryObjectPin: Address=7000003afc63608 Handle=70000082ddc1770 Mode=S Lock=7000003ae512a00 ClusterLock=7000008115f01c8 User=70000080cb228e8 Session=70000080cb228e8 Count=1 Mask=0001 Flags=[00] SavepointNum=0x743a
  2. LibraryHandle: Address=70000082ddc1770 Hash=ce75949c LockMode=S PinMode=S LoadLockMode=0 Status=INVL
  3. ObjectName: Name=TMSLINKER.GR_P_POLICY@TMSXT
  4. FullHashValue=afc1af8752f8d344436836b6ce75949c Namespace=TABLE/PROCEDURE(01) Type=SYNONYM(05) Identifier=0 OwnerIdn=2147483644
  5. Statistics: InvalidationCount=2 ExecutionCount=0 LoadCount=1 ActiveLocks=1 TotalLockCount=1 TotalPinCount=1
  6. Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=0 BucketInUse=1 HandleInUse=1 HandleReferenceCount=0
  7. Concurrency: DependencyMutex=70000082ddc1820(0, 4, 0, 0) Mutex=70000082ddc18a0(0, 21, 0, 0)
从搜索到的信息来看,应该是library cache中的一块区域,而原因也比较明显了,是因为SYNONYM为INVALID引起的,通过查看这个SYNONYM的信息,确实是这样:
  1. > select * from dba_synonyms where synonym_name='GR_P_POLICY';

  2. OWNER SYNONYM_NAME TABLE_OWNER TABLE_NAME DB_LINK
  3. ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------
  4. PUBLIC GR_P_POLICY TMSLINKER GR_P_POLICY TMSXT

  5. > select owner,object_name,status from dba_objects where object_name='GR_P_POLICY';

  6. OWNER OBJECT_NAME STATUS
  7. ------------------------------ ------------------------------ -------
  8. PUBLIC GR_P_POLICY INVALID
这个SYNONYM是指向远端的一个对象的,测试了下使用的DBLINK,DBLINK不通,询问网络组得知网络有故障,正在修复。等到网络故障解决后,该ORA-600错误自然就解决了。




来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/13885898/viewspace-1694039/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
中国南方Oracle用户组(SOUG)联合创始人,Oracle ACE,曾服务于国外某大型银行,曾担任国内某中型保险公司的技术经理,现为易景科技合伙人、首席架构师、CTO。主要研究方向数据库内核。

注册时间:2024-06-26

  • 博文量
    124
  • 访问量
    542481