1. 程式人生 > >警示:一個專為AIX上11.2.0.4版本定製的Bug正在高發

警示:一個專為AIX上11.2.0.4版本定製的Bug正在高發

有這麼一個Bug,僅在AIX平臺上,Oracle Database 11.2.0.4的版本中出現,在12.1中被修復,之前和之後都不存在,所以簡直是為這一版本定製的。

之前一些客戶零星的遇到這個問題,而在2017年最近的幾個月,幾個客戶接連遇到這個問題,所以我想還是寫下這篇文章,作為一個提示。

這個BUG是:

Bug 20675347 AIX: ORA-7445 [kghstack_overflow_internal] or ORA-600 [kghstack_underflow_internal_2] in 11.2.0.4 on IBM AIX 

當這個ORA-7445 [kghstack_overflow_internal] or ORA-600 [kghstack_underflow_internal_2] 錯誤出現在告警日誌時,資料庫例項通常就會崩潰,需要重新啟動。

為什麼會出現這個專屬的錯誤呢?這個Bug的原因是 AIX C編譯程式碼產生的BUG –  AIX C compiler code generation bug,這個BUG的修正被包含在  AIX Bundle 2 for Oracle Database 11.2.0.4 中。

Bug

這個錯誤的根本原因還是堆疊記憶體上的訪問錯誤,其觸發原因很多。一個案例的發生時,資料庫系統記憶體自動調整頻繁。我們建議AIX上的使用者在維護時,考慮修復這個問題。

資料庫

在以上堆疊中,可以看到在呼叫 kghstack_free 函式,在進行堆疊釋放時出現錯誤,也就是堆疊的資訊儲存出現了不一致,這是程式碼中的BUG導致的。

鑑於這個BUG最近的多發性,警示使用者,引起注意,至少在遇到這個錯誤時,能夠快速的進行定位確認。

也歡迎同樣遇到這個BUG的朋友,進行反饋。

文章來自微信公眾號:資料和雲