ITPub博客

首页 > 数据库 > Oracle > Bug 31625618 DML Over a LOB Column ORA-3137 [3146]When the Bind Size is > 256k

Bug 31625618 DML Over a LOB Column ORA-3137 [3146]When the Bind Size is > 256k

原创 Oracle 作者:darren__chan 时间:2021-03-09 11:38:28 0 删除 编辑

19c的bug, Bug 31625618  DML Over a LOB Column Using Long Bind Fails with ORA-3137 [3146] [4] / ORA-3137 [3146] [94] When the Bind Size is > 256k Bytes


    这个bug补丁是前段时间刚出来,影响版本是19.5以后,计划要到19.10才修复。

    主要问题是引起memory courrption并导致内存中的数据库坏块引发各种错乱,最终导致rac实例crash掉重启, 客户的问题情况是三个节点rac,3节点出现内存坏块后crash,随即2节点会出现pi 异常也crash,然后隔一天后1节点也会crash一次。最后通过申请 31625618 补丁打上之后便不再出现了。

    触发条件:1.表使用lob字段,

                    2.lob字段的绑定变量 bind size >256k bytes,

                    3.由于在函数koklc_lob_write_cbk中未对变量kole_piece初始化引起,然后在函数中将变更初始化为0。

    这个问题发生时的主要分析难度是,一旦出现异常,瞬间就是大量的因为坏块引起ora-600错误日志,然后直接发生reconfigure, 而ORA-3137 [3146]相对在前面不起眼,很容易就陷进去分析后面的ora-600错误或者操作系统问题上。 


这里小记一下!



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

请登录后发表评论 登录
全部评论
一思尚存,此志不懈

注册时间:2014-09-09

  • 博文量
    210
  • 访问量
    1344208