IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    ORA-600 kdsgrp1

    惜分飞发表于 2016-08-03 12:50:07
    love 0

    联系:手机(+86 13429648788) QQ(107644445)QQ咨询惜分飞

    标题:ORA-600 kdsgrp1

    作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

    在硬件恢复,断电,redo异常等恢复case中ORA-600 [kdsgrp1]是一个比较常见的错误,这里该出来官方关于该错误的解释说明和处理方法

    RROR:
      Format: ORA-600 [kdsgrp1]
    
    VERSIONS:
      versions 10.1 and above
    
    
    
    DESCRIPTION:
    
     This error was introduced in 10g with the fix to Bug 2442351, it provides
     for an extra health check on a block, we detected a null row header,
     see Note:2442351.9 for more information.
    
     Error may be caused by:
    
     Case 1. A row referenced in an index that does not exist in the table.
     Case 2. An non-existent rowid pointed to by a chained row.
    
     Trace Examples:
    
     Case 1. Mismatch between table and index:
    ====================================================
    
     Trace file has:
    
     row 02433566.13 continuation at
     file# 9 block# 210278 slot 20 not found
    
     The file=9 block=210278 is rdba=0x02433566 which was taken from an index:
     
     row#3[7549] flag: ------, lock: 0, len=85, data:(6):  02 43 35 66 00 14
    
     But the slot 20 does not exist in the table block:
     
     tab 0, row 1, @0x1e62
     tl: 2 fb: --HDFL-- lb: 0x3
     tab 0, row 12, @0x191a
     tl: 2 fb: --HDFL-- lb: 0x1
     tab 0, row 17, @0x1675
     tl: 2 fb: --HDFL-- lb: 0x2    
     tab 0, row 21, @0x1459       
     tl: 2 fb: --HDFL-- lb: 0x4
    
     ORA-1499 may be produced by analyze:
    
     analyze table <table name> validate structure cascade;
    
     Case 2. A row points to another rowid which does not exist (Chained row does not exist).
    ============================================================================================
     
     Trace file has:
    
     row 1186b11a.ffffffff continuation at
     file# 70 block# 441621 slot 1 not found 
    
     It means that row with rdba 0x1186b11a continues in file# 70 block# 441621 slot 1.  
     But the information in file# 70 block# 441621 slot 1 does not exist.  It is:
    
     tab 0, row 16, @0xd7f    ---> This is the slot with the problem.
     tl: 29 fb: -------- lb: 0x0  cc: 11
     nrid:  0x1186bd15.1      ---> It points to rdba=0x1186bd15 slot 1 
    (file# 70 block# 441621 slot 1) but that row does not exist in that block.
    
     For this case ANALYZE TABLE .. VALIDATE STRUCTURE is not detecting this logical corruption
    Referece Bug 6858313
    
    Run an export (exp) or Full Table Scan to identify if there is a permanent invalid chained row.
    
     Workaround for Case 2:
     
     The row producing the ORA-600 [kdsgrp1] can be skipped by setting the Event 10231
    
     Note that a testcase has concluded that event 10231 does not skip rows in an Index Organized Table (IOT)
     when there is an invalid nrid as explained in Case 2.  It only works for regular tables.
    
     Event 43810 skip corrupt block in IOT?s (10.2.0.4) 
    nor  parameter _index_scan_check_skip_corrupt (11g) work for this case 2 on IOTs either.
    
    FUNCTIONALITY:
      Kernel Data layer Seek/Scan
    
    IMPACT:
    
      PROCESS FAILURE
      POSSIBLE PHYSICAL CORRUPTION
    
    • How to resolve ORA-600 [4194] errors
    • 记录一次ORA-600[13013]处理过程
    • TXChecker初试
    • 记录一次oer 8102.2处理
    • ORA-600 4193 错误说明和解决
    • 10.2.0.5出现ORA-00600[kcblasm_1]
    • 记录一次ORA-00600[kdsgrp1]分析
    • 通过bbed查看数据块结构
    • undo异常事务回滚规则分析
    • 处理smon清理临时段导致数据库异常案例
    • 自治事件引起死锁
    • ORA-01555 caused by SQL statement below


沪ICP备19023445号-2号
友情链接