zoukankan      html  css  js  c++  java
  • ORA-00600: internal error code, arguments: [13030], [20]一例解决

    两年没有接触oracle了,中午,一环境update from的时候出现ORA-00600: internal error code, arguments: [13030], [20]异常,经查,官网所述为涉及到了v$表所致,典型举例比较多的是v$session,但我们不涉及任何v$表的查询。原sql类似如下:

    UPDATE (
        SELECT
            a.f_assign aassign,
            b.f_offsetincome bf_offsetincome
        FROM
            XXX a,
            YYY b,
            ZZZ c
        WHERE a.c_fundcode = b.c_fundcode
      ...........................
    AND a.c_tacode = b.c_tacodeAND a.d_cdate = c.d_sysdate AND a.c_tacode = c.c_tacode ) SET aassign = bassign, af_offsetincome = bf_offsetincome

    alert.log如下:

    Errors in file /home/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_ora_26226.trc (incident=1767236):
    ORA-00600: �ڲ��������, ����: [13030], [20], [], [], [], [], [], [], [], [], [], []
    Errors in file /home/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_ora_26226.trc (incident=1767237):
    ORA-00600: �ڲ��������, ����: [13030], [20], [], [], [], [], [], [], [], [], [], []
    trc如下:
    *** 2018-06-25 11:06:35.426
    *** SESSION ID:(7639.3314) 2018-06-25 11:06:35.426
    *** CLIENT ID:() 2018-06-25 11:06:35.426
    *** SERVICE NAME:(ora11g) 2018-06-25 11:06:35.426
    *** MODULE NAME:(hsserver@localhost.localdomain (TNS V1-V3)) 2018-06-25 11:06:35.426
    *** ACTION NAME:() 2018-06-25 11:06:35.426
     
    updrow: CR error table 0 - rowid: 00094651.01800487.22 code 20
    updRT frame @0xcb286058
    kccArr_qedmDml 0xcb285f10
    nKccs_qedmDml 38
    kaf_qedmDml 0xcee756f8
    nKaf_qedmDml 16
    kct_qedmDml 0xc5b016b0
    rowid_qedmDml 0xd0bb50c8
    kau_qedmDml (nil)
    delayedKau_qedmDml (nil)
    return_qedmDml (nil)
    trigger_qedmDml (nil)
    olc_qedmDml (nil)
    ntbCtx_qedmDml (nil)
    insTrig_qedmDml (nil)
    hier_qedmDml (nil)
    dynCon_qedmDml (nil)
    check_qedmDml (nil)
    rlsCheck_qedmDml (nil)
    fga_qedmDml (nil)
    cses_qedmDml (nil)
    elrtx_qedmDml (nil)
    pmap_qedmDml (nil)
    lbnr (nil)
    upes_qedmUpd 0xcb285ec8
    nCols_qedmUpd 9
    kdu_qedmUpd 0xc8efea10
    kauxu_qedmUpd (nil)
    rhsCols_qedmUpd (nil)
    nRhsCols_qedmUpd 0RHS Columns:
    hiLogCol_qedmUpd 1
    hiCmpCol_qedmUpd 37
    hiCpyCol_qedmUpd 37
    hiUpdCol_qedmUpd 37
    kaf_qedmUpd (nil)
    nKaf_qedmUpd 0
    iotKeys_qedmUpd (nil)
    ntabOpn_qedmUpd (nil)
    rhc_qedmUpd (nil)
    cpykafidx_qedmUpd 0xc8efe5a0
    cpykafidxcc_qedmUpd 0
    cpykccidx_qedmUpd 0xc8efe5c0
    cpykccidxcc_qedmUpd 0
    flags_qedmUpd 0x80800
    rpkKauxu_qedmUpd (nil)
    Incident 1689338 created, dump file: /home/oracle/diag/rdbms/ora11g/ora11g/incident/incdir_1689338/ora11g_ora_26226_i1689338.trc
    ORA-00600: �ڲ��������, ����: [13030], [20], [], [], [], [], [], [], [], [], [], []
    ora11g_ora_26226_i1689338.trc如下:
    Dump continued from file: /home/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_ora_26226.trc
    ORA-00600: �ڲ��������, ����: [13030], [20], [], [], [], [], [], [], [], [], [], []
    
    ========= Dump for incident 1689338 (ORA 600 [13030]) ========
    
    *** 2018-06-25 11:06:35.699
    dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
    ----- Current SQL Statement for this session (sql_id=5b2qrzuc0ym55) -----
     update (select a.f_assign aassign,                 a.f_unassign aunassign,                 a.f_encashratio aencashratio,                 a.f_changeratio achangeratio,                 a.c_vastflag avastflag,                 a.f_subscriberatio asubscriberatio,                 a.c_excessflag aexcessflag,                 a.f_structuredratio astructuredratio,                 a.f_offsetincome af_offsetincome,                  b.f_assign bassign,                 b.f_unassign bunassign,                 b.f_encashratio bencashratio,                 b.f_changeratio bchangeratio,                 b.c_vastflag bvastflag,                 b.f_subscriberatio bsubscriberatio,                 b.c_excessflag bexcessflag,                 b.f_structuredratio bstructuredratio,                 b.f_offsetincome bf_offsetincome            from ta_tnetvalueday a, ta_tnetvaluedaytmp b, ta_ttainfo c           where ( a.c_tacode='F6' )             and a.c_tenantid = '*'             and a.d_cdate = b.d_cdate             and a.d_netvaluedate = b.d_netvaluedate             and a.c_fundcode = b.c_fundcode             and a.c_tacode = b.c_tacode             and a.c_tenantid = b.c_tenantid             and a.d_cdate = c.d_sysdate             and a.c_tacode = c.c_tacode             and a.c_tenantid = c.c_tenantid)     set aassign = bassign,         aunassign = bunassign,         aencashratio = bencashratio,         achangeratio = bchangeratio,         avastflag = bvastflag,         asubscriberatio = bsubscriberatio,         aexcessflag = bexcessflag,         astructuredratio = bstructuredratio,         af_offsetincome =  bf_offsetincome 
    
    ----- Call Stack Trace -----
    calling              call     entry                argument values in hex      
    location             type     point                (? means dubious value)     
    -------------------- -------- -------------------- ----------------------------

    经查:

    https://grepora.com/tag/ora-600/

    http://yangtingkun.net/?p=492

    https://grepora.com/2017/04/12/ora-00600-internal-error-code-arguments-13030-20/

    http://db.geeksinsight.com/2013/03/12/ora-00600-internal-error-code-arguments-13030-20/

    均不是上述问题所致,但通过类似信息可知,应该是部分数据不一致的问题所致,故改写sql如下:

    UPDATE XXX a 
    SET (
      f_assign,
      f_offsetincome
    ) = (
      SELECT
        b.f_assign,
        b.f_unassign,
        b.f_structuredratio,
        b.f_offsetincome
      FROM
        YYY b,ZZZ c
      WHERE
        a.d_cdate = b.d_cdate
      AND a.d_netvaluedate = b.d_netvaluedate
        AND a.c_tenantid = c.c_tenantid
    )
    WHERE exists (select 1
      FROM
        YYY b,ZZZ c
      WHERE
        a.d_cdate = b.d_cdate
      AND a.d_netvaluedate = b.d_netvaluedate
        AND a.c_tacode = c.c_tacode
        AND a.c_tenantid = c.c_tenantid)

    问题解决。

  • 相关阅读:
    负载均衡,会话保持,session同步
    UML类图关系大全
    web集群时session同步的3种方法
    Hive SQL count(distinct)效率问题及优化
    用C#开发蜘蛛网络爬虫采集程序(附源码)(二)
    前端检查Gridview中Checkbox列表并提示确认框
    jQuery处理JSON对象
    枚举的转换、遍历和绑定到DropDownList
    Cache缓存的遍历与清除所有缓存
    用C#开发蜘蛛网络爬虫采集程序(附源码)(一)
  • 原文地址:https://www.cnblogs.com/zhjh256/p/9223888.html
Copyright © 2011-2022 走看看