ORA-600(krvxdds: duplicated session not)錯誤

yangtingkun發表於2011-08-28

在客戶的告警日誌中發現這個錯誤資訊。

 

 

這個錯誤資訊是第一次看到,而且在metalink中也沒有找到任何相關的描述,詳細的錯誤資訊如下:

Fri Nov 19 11:47:47 2010
: Invalid dictionary process cntxt.
Fri Nov 19 11:47:47 2010
Errors in file /oracle/db/admin/B1MODDB/udump/b1moddb1_ora_4488.trc:
ORA-00600: internal error code, arguments: [krvxdds: duplicated session not ], [], [], [], [], [], [], []
ORA-01334: invalid or missing logminer dictionary processes context
Fri Nov 19 11:48:05 2010
Trace dumping is performing id=[cdmp_20101119114805]
Fri Nov 19 11:48:05 2010
Errors in file /oracle/db/admin/B1MODDB/udump/b1moddb1_ora_4488.trc:
ORA-07445: exception encountered: core dump [lsfcln()+49] [SIGSEGV] [Address not mapped to object] [0x4200757400696D65] [] []
ORA-00600: internal error code, arguments: [krvxdds: duplicated session not ], [], [], [], [], [], [], []
ORA-01334: invalid or missing logminer dictionary processes context

ORA-600錯誤出現之前,報了一個C語言的錯誤,顯然這是導致ORA-600錯誤的原因。分析ORA-600錯誤隨後的ORA-1334錯誤,基本可以確定,根本錯誤原因是ORA-1334,而600錯誤是這個錯誤所引發的。

ORA-01334: invalid or missing logminer dictionary processes context
Cause: Unexpected internal error condition
Action: None

而這個ORA-1334同樣是一個內容錯誤,既沒有解釋錯誤原因,也沒有說明解決方法。

繼續檢查對應的TRACE資訊:

/oracle/db/admin/B1MODDB/udump/b1moddb1_ora_4488.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Oracle Label Security, Data Mining
and Real Application Testing options
ORACLE_HOME = /oracle/db
System name: HP-UX
Node name: MODDB1
Release: B.11.23
Version: U
Machine: ia64
Instance name: B1MODDB1
Redo thread mounted by this instance: 1
Oracle process number: 0
Unix process pid: 4488, image: oracle@MODDB1

Ioctl ASYNC_CONFIG error, errno = 1
/oracle/db/admin/B1MODDB/udump/b1moddb1_ora_4488.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Oracle Label Security, Data Mining
and Real Application Testing options
ORACLE_HOME = /oracle/db
System name: HP-UX
Node name: MODDB1
Release: B.11.23
Version: U
Machine: ia64
Instance name: B1MODDB1
Redo thread mounted by this instance: 1
Oracle process number: 159
Unix process pid: 4488, image: oracle@MODDB1

*** ACTION NAME:() 2010-11-19 11:47:47.799
*** MODULE NAME:(TOAD 9.7.0.51) 2010-11-19 11:47:47.799
*** SERVICE NAME:(B1MODDB) 2010-11-19 11:47:47.799
*** SESSION ID:(473.17735) 2010-11-19 11:47:47.799
*** 2010-11-19 11:47:47.799
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [krvxdds: duplicated session not ], [], [], [], [], [], [], []
ORA-01334: invalid or missing logminer dictionary processes context
Current SQL statement for this session:
SELECT * FROM V$LOGMNR_CONTENTS
----- Call Stack Trace -----
calling              call     entry                argument values in hex     
location             type     point                (? means dubious value)    
-------------------- -------- -------------------- ----------------------------
ksedst()+64          call     ksedst1()            000000000 ? 000000001 ?
ksedmp()+2176        call     ksedst()             000000000 ?
                                                   C000000000000C9F ?
                                                   4000000003EDCDE0 ?
                                                   000000000 ? 000000000 ?
                                                   000000000 ?
ksfdmp()+48          call     ksedmp()             000000003 ?
kgerinv()+304        call     ksfdmp()             C000000000000612 ?
                                                   000000003 ?
                                                   400000000938F250 ?
                                                   00001603B ? 000000000 ?
                                                   000000000 ?
kgeasnmierr()+144    call     kgerinv()            6000000000031370 ?
                                                   40000000018E6B10 ?
                                                   6000000000032428 ?
                                                   40000000018E6B10 ?
                                                   9FFFFFFFFFFF62E0 ?
krvxdds()+368        call     kgeasnmierr()        6000000000031370 ?
                                                   60000000001CF510 ?
                                                   60000000001CF520 ?
                                                   60000000000327A0 ?
                                                   40000000012AFBB0 ?
krvfpsc_PostSelectC  call     krvxdds()            9FFFFFFFBF3AABB0 ?
leanup()+432                                       9FFFFFFFFFFF6318 ?
                                                   C000000000000896 ?
                                                   4000000007161A50 ?
                                                   9FFFFFFFFFFF6308 ?
krvfcact()+4496      call     krvfpsc_PostSelectC  9FFFFFFFBF37A0B8 ?
                              leanup()             C0000000000013AE ?
                                                   4000000007162EC0 ?
                                                   0000160FB ?
                                                   9FFFFFFFBC8044A8 ?
                                                   9FFFFFFFFFFF6320 ?
                                                   9FFFFFFFFFFF6310 ?
qerfxFetch()+1040    call     krvfcact()           9FFFFFFFFFFF6930 ?
                                                   9FFFFFFFBEF80500 ?
                                                   9FFFFFFFFFFF6330 ?
                                                   C0000000000015B3 ?
                                                   0000000CA ?
                                                   9FFFFFFFBD480738 ?
                                                   4000000002D65350 ?
                                                   9FFFFFFFFFFF6330 ?
opifch2()+9632       call     qerfxFetch()         C0000002D9618B28 ?
                                                   4000000001AD7CF0 ?
                                                   9FFFFFFFFFFF6B90 ?
                                                   0000001F4 ?
                                                   60000000000AAC20 ?
                                                   C000000000001F46 ?
                                                   4000000002D43740 ?
                                                   000018371 ?
opifch()+112         call     opifch2()            9FFFFFFFFFFF7B50 ?
                                                   4000000002DBFA70 ?
                                                   000018287 ?

可以看到,導致錯誤產生的SQL是查詢V$LOGMNR_CONTENTS檢視的語句。除了這個錯誤資訊外,還發現執行這個語句的客戶端工具是TOAD

    (FOB) flags=2 fib=c00000032fa3a498 incno=0 pending i/o cnt=0
     fname=/dev/vg12/rsystem
     fno=1 lblksz=8192 fsiz=397311
    ----------------------------------------
    SO: c00000033f60dfb0, type: 4, owner: c00000033f45b248, flag: INIT/-/-/0x00
    (session) sid: 473 trans: 0000000000000000, creator: c00000033f45b248, flag: (8000041) USR/- BSY/-/-/-/-/-
              DID: 0001-009F-00012412, short-term DID: 0001-009F-00012413
              txn branch: 0000000000000000
              oct: 3, prv: 0, sql: c0000002967468c0, psql: c0000002eed195f0, user: 0/SYS
    service name: B1MODDB
    O/S info: user: Ly, term: LIYAN, ospid: 3404:2428, machine: MSHOME\LIYAN
              program: toad.exe
    application name: TOAD 9.7.0.51, hash value=1244923487
    last wait for 'SQL*Net message from client' blocking sess=0x0000000000000000 seq=753 wait_time=16896447 seconds since wait started=18
                driver id=54435000, #bytes=1, =0

配合ORA-600的第一個錯誤引數:krvxdds: duplicated session not,懷疑可能是TOAD在執行LOGMNR命令時,使用了多個視窗或者指定的字典有誤,從而導致了這個錯誤出現。在告警日誌中,出現了多次的LOGMNR的相關資訊,但是這個錯誤只出現了一次,而這個錯誤在metalink都找不到,也說明這個錯誤很難觸發。看來這可能是工具或者會話狀態不正常引起的錯誤,只需要重新連線資料庫,錯誤就不會再現,而且對於資料庫而言基本沒有影響。

 

 

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

相關文章