打補丁打出新的BUG來了

zhang41082發表於2019-06-30

ORACLE 10.2.0.2版本的RAC環境下,因為拿標準的TPC-C進行壓力測試,發現後臺ALERT日誌中報有很多DEADLOCK,或許是TPC-C壓力測試軟體的問題,也或許是ORACLE的BUG,於是找到BUG相對應的補丁,OPATCH打上去,結果三個節點只有一個節點能起的來了,其他兩個節點不能OPEN了,最後把新打的PATCH刪掉,錯誤依舊。

[@more@]

手工啟動會報ORA-03113: end-of-file on communication channel,嘗試了一步步的來啟動,結果發現是最後庫OPEN的時候出現的問題,同時後臺ALERT日誌中報錯:ORA-07445: exception encountered: core dump [kkxsyn()+584] [SIGSEGV] [Address not mapped to object] [0x000000168] [] [],METALINK發現是一個新的BUG,BUG號5128575。基本上就是說,你打PATCH的時候,ORACLE會忽悠你,說是PATCH打好了,其實只更新了你執行OPATCH的那個節點的庫檔案,其他的節點都沒有更新,手工更新一下就OK了,下面是METALINK上詳細的描述:

Installing the 10.2.0.2 Patch Set in a RAC installation
on any Unix platform does not correctly update the libknlopt.a
file on all nodes. The local node where the installer is run
does update libknlopt.a but remote nodes do not get the
updated file.

This can lead to dumps or internal errors on the remote nodes
if Oracle is subsequently relinked.
eg: Attempts to use PLSQL may dump in kkxcms or kkxsyn

The workaround steps below should be considered as a mandatory
post install steps for the 10.2.0.2 Patch Set.

Workaround:
Following install of 10.2.0.2 on a RAC system:
Ensure all instances are shut down
Manually copy $ORACLE_HOME/rdbms/lib/libknlopt.a from the local node
to all remote nodes and relink Oracle on all nodes.
eg: cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ioracle

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25016/viewspace-1014450/,如需轉載,請註明出處,否則將追究法律責任。

相關文章