2016年8月3日 星期三

[ORACLE] ORA-00600:內部錯誤代碼,參數:[qks3tAssert:1],[35072]

問題:
將DBMS_STATS.GATHER_TABLE_STATS包在PACKAGE中,在執行PACKAGE的時候會報ORA-00600錯誤(圖一),再去看一下對應的TRACE可以看到如圖二的錯誤訊息
圖一

圖二

描述:
        一般來說SQL執行速度慢,不外乎幾個處理方式,看執行計畫有沒有需要增加INDEX,需不需要rebuild index,更新一下統計資訊之類的,在此case增加一個DBMS_STATS.GATHER_TABLE_STATS其實也沒有錯,但是好巧不巧剛好踩到ORACLE 9.2.0.7之後的一個BUG,剛好出問題的是9.2.0.8,不過還好這個BUG有Patch(5089244)可以修正

資料來源:ORACLE SUPPORT
文件ID:418727.1

後記:
        其實這個CASE有個好玩的地方,在測試環境執行PACKAGE的時候是不會有ORA-00600的錯誤,但是上到正式環境就會出現ORA-00600,更好玩的是雖然出現ORA-00600的錯誤,但是實際去看該TABLE的Last Analyzed卻是有執行完成。

沒有留言:

張貼留言