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

darren__chan發表於2021-03-09

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部落格 ” ,連結:http://blog.itpub.net/29863023/viewspace-2761888/,如需轉載,請註明出處,否則將追究法律責任。

相關文章