RAT(Oracle Real Application Testing)時ORA 600報錯處理
一、基本概念介紹
Oracle Real Application Testing 選件和 Oracle DB 的測試資料管理功能有助於確保資料 庫更改的完整性並管理測試資料。使用 Oracle Real Application Testing 選件可以執行實 際測試。透過捕獲生產工作量並在生產部署之前評估系統更改對這些工作量的影響, Oracle Real Application Testing 可最大程度地降低與系統更改關聯的不穩定性風險。 SQL 效能分析程式和資料庫重放是 Oracle Real Application Testing 的關鍵元件。
根據所測試的系統更改的性質和影響以及將要執行測試的系統型別,可以使用其中一個或兩個元件來執行測試。
SQL 效能分析程式 (SPA)
SPA 是在以下情況下可以選用的一個工具:在資料庫或作業系統級別進行更改後,您嘗 試確定效能將發生變化的 SQL 語句。SQL 效能分析程式將不同來源的 SQL 語句捕獲到 一個 SQL 最佳化集 (STS) 中,這些來源包括遊標快取記憶體、自動工作量資料檔案庫 (AWR) 和現有的 SQL 最佳化集。透過孤立地執行每條 SQL 語句來分析 STS。執行順序由最佳化集 中語句的順序而定。STS 包含繫結變數、執行計劃和執行上下文資訊。使用 SQL 效能分 析程式時,您將執行 STS 並捕獲效能統計資訊,在更改系統後再次執行 STS,然後比較 兩次結果。SQL 效能分析程式不考慮 SQL 語句的相互影響。
Database Replay資料庫重放
如果發生了影響廣泛的更改,如作業系統或資料庫版本更改,或者必須測試總體系統效能, 您應將“資料庫重放”作為首選的工具。“資料庫重放”捕獲一個時間段內的實際工作量 以及效能統計資訊。先是針對目標系統處理工作量,然後重放工作量。重放選項包括重放 速度、考慮時間、維護事務處理順序(同步)及其他。重放工作量後,可針對原始捕獲或 另一個重放會話來比較效能統計資訊、資料偏差和錯誤數。可以使用 AWR 和重放報告。
Oracle Real Application Testing在以下場景非常有用
• 資料庫升級
• 實施最佳化建議
• 方案更改
• 蒐集統計資訊
• 更改資料庫引數
• 更改作業系統和硬體
二、環境資訊
作業系統:Linux 7.9
資料庫版本及架構: Oracle 11.2.0.4 RAC
三、問題描述
Prepare the Replay時失敗,報ORA-00600: internal error code, arguments: [kecubBroadcast:msgctx holder:]
四、解決方案
1、停掉RAC一個節點,進行執行RAT;
2、Prepare the Replay時
設定同步模式,connect_time_scale和think_time_scale使用預設值。
execute dbms_workload_replay.prepare_replay (synchronization => TRUE);
五、日誌分析
資料庫日誌alert_orcl1.log
資料庫日誌忠報錯資訊是ORA-00600: internal error code, arguments: [kecubBroadcast:msgctx holder:], [129], [44],我們在orcl1_ora_36473.trc和orcl1_ora_36473_i648765.trc中進一步檢視資訊
...
Mon Sep 19 13:30:44 2022Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_36473.trc (incident=648765):ORA-00600: internal error code, arguments: [kecubBroadcast:msgctx holder:], [129], [44], [], [], [], [], [], [], [], [], []Incident details in: /u01/app/oracle/diag/rdbms/orclzdata/orcl1/incident/incdir_648765/orcl1_ora_36473_i648765.trc
...
orcl1_ora_36473.trc
...
*** 2022-09-19 13:20:37.143*** SESSION ID:(4978.221) 2022-09-19 13:20:37.143*** CLIENT ID:() 2022-09-19 13:20:37.143*** SERVICE NAME:(orclzdata) 2022-09-19 13:20:37.143*** MODULE NAME:(WRC$) 2022-09-19 13:20:37.143*** ACTION NAME:() 2022-09-19 13:20:37.143 2022-09-19 13:20:37.143107 :kecps.c@7600: kecpsThreadFailureLocal: Handling thread failure for file_id 2874062372111143347*** 2022-09-19 13:30:44.242Incident 648765 created, dump file: /u01/app/oracle/diag/rdbms/orcl/orcl1/incident/incdir_648765/orcl1_ora_36473_i648765.trcORA-00600: internal error code, arguments: [kecubBroadcast:msgctx holder:], [129], [44], [], [], [], [], [], [], [], [], []
...
orcl1_ora_36473_i648765.trc
Dump continued from file: /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_36473.trcORA-00600: internal error code, arguments: [kecubBroadcast:msgctx holder:], [129], [44], [], [], [], [], [], [], [], [], []========= Dump for incident 648765 (ORA 600 [kecubBroadcast:msgctx holder:]) ========*** 2022-09-19 13:30:44.243dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)----- Current SQL Statement for this session (sql_id=dxqnuun5s1055) -----begin :1 := dbms_workload_replay.client_connect( dbms_workload_replay.KECP_CLIENT_CONNECT_THRDFAIL, :2 ); end;----- PL/SQL Stack ---------- PL/SQL Call Stack ----- object line object handle number name0x4b333bc700 1907 package body SYS.DBMS_WORKLOAD_REPLAY0x4b333bc700 8662 package body SYS.DBMS_WORKLOAD_REPLAY0x4b333bc700 8848 package body SYS.DBMS_WORKLOAD_REPLAY0x4b309f2160 1 anonymous block
...
從orcl1_ora_36473_i648765.trc可以看到ORA-600報錯是執行DBMS_WORKLOAD_REPLAY包觸發的。
-the end-
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28373936/viewspace-2916088/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【RAT】Oracle Real Application Testing(真用應用測試)介紹OracleAPP
- Real Application Test(RAT)APP
- Oracle Real Application Testing之DB Replay實踐案例OracleAPP
- oracle ora-600 Ktspgsb-1 錯誤處理案例Oracle
- ORA-600[6122]錯誤處理
- ORA-600[4000]/[4097]錯誤的處理
- Oracle 12c ORA-29548 報錯處理Oracle
- Oracle 12.2 RAC 報錯ora-600 ora-07445Oracle
- ORA-600[kqlnrc_1]錯誤分析及處理
- oracle ORA-01940 報錯的處理方法Oracle
- ORACLE11GRAC alert日誌ORA-600 [kqlnrc_1]錯誤處理Oracle
- ORA-02429 報錯處理
- ORA-600 [2662]故障處理
- oracle ora-00054錯誤處理Oracle
- [Oracle報錯處理]ORA-00031: session marked for killOracleSession
- 【ORACLE】ORA-27102: out of memory報錯的處理Oracle
- Oracle Real Application Clusters GFSOracleAPP
- Oracle資料庫 ORA-600 [13013]故障處理Oracle資料庫
- ORA-600 [15160]的處理
- Using Real Application Testing Functionality in Earlier Releases_560977.1APPFunction
- ora-04045和ora-16000報錯處理
- oracle ORA-14452錯誤處理Oracle
- Oracle 11g ORA-600 [kjbrcrcvt:lms] 問題處理Oracle
- 【故障處理】ORA-600:[13013],[5001]故障處理
- ORA-1654報錯處理一則
- ORA-00979: not a GROUP BY expression報錯處理Express
- 【ERROR】儲存鏈路問題造成oracle錯誤,ora-600[4193] 問題處理ErrorOracle
- ORA-00439: feature not enabled: Real Application ClustersAPP
- 一次ORA-600故障的處理
- ORACLE ORA-03137錯誤處理Oracle
- oracle ORA-14452錯誤處理例程Oracle
- Oracle起動庫時1102報錯處理Oracle
- Oracle啟動報錯(ORA-01990,ORA-27037)處理方法Oracle
- ADG--Ora-30927報錯處理
- ORA-07445 ORA-00108 報錯處理
- ORA-600 733 問題處理案例分享
- Deinstallation Tool for Oracle Clusterware and Oracle Real Application ClustersOracleAPP
- ORA-39002和ORA-39166報錯處理和探究