資料庫alert日誌報ORA-03137 TTC 協議內部錯誤故障分析處理

yuntui發表於2016-11-03
環境:AIX 7100
資料庫版本:11.2.0.4
是否RAC:是




1、最近巡檢發現某資料庫DB alert日誌報錯,其日誌詳細如下:
Fri Oct 10 15:41:28 2014 
Errors in file /oraclelog/diag/rdbms/dbrac/dbrac1/trace/dbrac1_ora_21430388.trc (incident=120497): 
ORA-03137: TTC 協議內部錯誤: [12333] [19] [3] [94] [] [] [] [] 
Incident details in: /oraclelog/diag/rdbms/dbrac/dbrac1/incident/incdir_120497/dbrac1_ora_21430388_i120497.trc 




2、檢視trace日誌如下:
dbrac1_ora_21430388_i120497.trc:
Error Code 
--------------- 
*** 2014-10-10 15:41:28.018 
*** SESSION ID:(1944.5995) 2014-10-10 15:41:28.018 
*** CLIENT ID:() 2014-10-10 15:41:28.018 
*** SERVICE NAME:(dbrac) 2014-10-10 15:41:28.018 
*** MODULE NAME:() 2014-10-10 15:41:28.018 
*** ACTION NAME:() 2014-10-10 15:41:28.018 


Dump continued from file: /oraclelog/diag/rdbms/dbrac/dbrac1/trace/dbrac1_ora_21430388.trc 
ORA-03137: TTC 協議內部錯誤: [12333] [19] [3] [94] [] [] [] [] 


File Version 
------------------ 
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production 
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, 
Data Mining and Real Application Testing options 
ORACLE_HOME = /oracle/app/oracle/product/11.2.0/db 
System name: AIX 
Node name: dbracdb1 
Release: 1 
Version: 7 
Machine: 00C011C54C00 
Instance name: dbrac1 
Redo thread mounted by this instance: 1 
Oracle process number: 62 
Unix process pid: 21430388, image: oracle@dbracdb1 


Current SQL 
------------------- 
----- Current SQL Statement for this session (sql_id=7f9ykbk0wg05r) ----- 
insert into tt_user(user_id,time,endtime,month,entry_time,VARCHAR_0) values(:1,:2,:3,:4,:5,:6) 


Process State 
-------------------- 
SO: 0x700010711bdf258, type: 4, owner: 0x7000107091e2920, flag: INIT/-/-/0x00 if: 0x3 c: 0x3 
proc=0x7000107091e2920, name=session, file=ksu.h LINE:12729 ID:, pg=0 
(session) sid: 1944 ser: 5995 trans: 0x0, creator: 0x7000107091e2920 
flags: (0x41) USR/- flags_idl: (0x0) -/-/-/-/-/- 
flags2: (0x40009) -/-/INC 
DID: , short-term DID: 
txn branch: 0x0 
edition#: 100 oct: 2, prv: 0, sql: 0x70001071699f990, psql: 0x70001071699f990, user: 50/UCR_dbrac 
ksuxds FALSE at location: 0 
service name: dbrac 
client details: 
O/S info: user: , term: , ospid: 1234 
machine: T330 program: 




3、分析了下該錯誤自上次啟動以來只觸發了3次,觸發後sql執行不成功,沒其他影響,
參考Understanding and Diagnosing ORA-00600 [12333] / ORA-3137 [12333] Errors ( Doc ID 389713.1 ) 


4、綜合文件得出該問題與JDBC有關: 
1)使用最新版本的 JDBC。 
2)監控和正確處理應用 timeout 的情況。 
3)確保 idle 或者 died 程式被正確清理掉。 
4)從JDBC端增大 queue sizes / buffers。 


5、將T330這臺機器上的JDBC版本(10.2.0.1)換成11.1.0.7之後,該錯誤就沒再重現,問題解決。



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

相關文章