ORA-600(kgscLogOff-notempty)錯誤

yangtingkun發表於2011-11-21

客戶的10.2.0.2環境在告警日誌中出現這個錯誤。

 

 

錯誤資訊為:

Thu Oct 27 21:18:03 2011
Errors in file /oracleapp/oracle10g/admin/ora10/udump/ora10_ora_27896.trc:
ORA-00600: internal error code, arguments: [kgscLogOff-notempty], [1], [], [], [], [], [], []
Thu Oct 27 21:18:05 2011
Errors in file /oracleapp/oracle10g/admin/ora10/udump/ora10_ora_27896.trc:
ORA-00600: internal error code, arguments: [kgscLogOff-notempty], [1], [], [], [], [], [], []
ORA-00081: address range [0x6000000000127430, 0x6000000000127434) is not readable
ORA-00600: internal error code, arguments: [kgscLogOff-notempty], [1], [], [], [], [], [], []

查詢MOS發現這個bug是在會話LOG OFF的時候報錯。其實從錯誤資訊中也可以看到這一點。

*** SERVICE NAME:(SYS$USERS) 2011-10-27 21:18:03.874
*** SESSION ID:(488.65460) 2011-10-27 21:18:03.874
*** 2011-10-27 21:18:03.874
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kgscLogOff-notempty], [1], [], [], [], [], [], []
----- Call Stack Trace -----
calling              call     entry                argument values in hex     
location             type     point                (? means dubious value)    
-------------------- -------- -------------------- ----------------------------
ksedst()+64          call     _etext_f()+23058430  000000000 ? 000000001 ?
                              09017162224         
ksedmp()+1680        call     _etext_f()+23058430  000000000 ?
                              09017162224          C000000000000D20 ?
                                                   40000000052B0470 ?
                                                   000000000 ? 000000000 ?
                                                   000000000 ?
ksfdmp()+48          call     _etext_f()+23058430  000000003 ?
                              09017162224         
kgerinv()+400        call     _etext_f()+23058430  400000000944F6F0 ?
                              09017162224          000000003 ?
                                                   C000000000000612 ?
                                                   000008F07 ? 000000000 ?
                                                   000000000 ?
kgeasnmierr()+144    call     _etext_f()+23058430  6000000000015C50 ?
                              09017162224          6000000000016D08 ?
                                                   6000000000014240 ?
                                                   600000000011C078 ?
                                                   6000000000017070 ?
$cold_kgscLogOff()+  call     _etext_f()+23058430  6000000000015C50 ?
144                           09017162224          6000000000268350 ?
                                                   6000000000268360 ?
                                                   6000000000017080 ?
                                                   000000000 ? 000000001 ?
kkslof()+320         call     _etext_f()+23058430  6000000000015C50 ?
                              09017162224         
opifcs()+592         call     _etext_f()+23058430  C0000001E8158788 ?
                              09017162224          C000000000000E21 ?
                                                   4000000002DB9C40 ?
                                                   000000000 ? 000000000 ?
ksuxds()+1504        call     _etext_f()+23058430  C0000001E8158788 ?
                              09017162224          4000000002E57DE0 ?
                                                   000008F9F ?
                                                   9FFFFFFFBF56BFC4 ?
                                                   9FFFFFFFBF56BFC6 ?
                                                   C0000001E8158788 ?
                                                   00000003F ?
                                                   9FFFFFFFBF56BFBC ?
ksudel()+128         call     0000000000000006     C0000001E8159B78 ?
                                                   60000000001274D4 ?
                                                   9FFFFFFFFFFF6A90 ?
                                                   600000000011D1C0 ?
opilof()+2624        call     0000000000000006     C0000001E8158788 ?
                                                   6000000000127678 ?
                                                   4000000003D0C7E0 ?
                                                   C0000000000011A9 ?
                                                   00000810D ?
                                                   60000000001274D4 ?
opiodr()+2064        call                  9FFFFFFFFFFF80B0 ?
                                                   400000000304FDD0 ?
                                                   00000820F ?
                                                   9FFFFFFFFFFF7020 ?
                                                   600000000011D1C0 ?
                                                   C000000000001836 ?
Cannot find symbol in .
Cannot find symbol in .
ttcpip()+1824        call     __text_start_f()+22  6000000000129A70 ?
                              765064               6000000000015DD0 ?
                                                   9FFFFFFFFFFFA790 ?
                                                   6000000000015DD0 ?
                                                   9FFFFFFFFFFF80C0 ?
                                                   600000000011D1C0 ?
                                                   000000000 ?
                                                   6000000000021838 ?
opitsk()+2224        call     0000000000000000     6000000000021830 ?
                                                   000000000 ?
                                                   9FFFFFFFFFFFA790 ?
                                                   000000000 ?
                                                   9FFFFFFFFFFFA900 ?
                                                   9FFFFFFFFFFFA6F4 ?
                                                   4000000001EA0780 ?
                                                   9FFFFFFFFFFFA6E8 ?
opiino()+1920        call     _etext_f()+23058430  000000000 ? 000000000 ?
                              09016090072          600000000011D1C0 ?
                                                   40000000023A45D0 ?
                                                   000008001 ?
                                                   9FFFFFFFFFFFA6E4 ?
opiodr()+2064        call     _etext_f()+23058430  00000003C ?
                              09016090072          9FFFFFFFFFFFF0D0 ?
                                                   9FFFFFFFFFFFF0C0 ?
                                                   9FFFFFFFFFFFBE00 ?
                                                   000000084 ?
                                                   600000000010EC20 ?
opidrv()+1104        call     __text_start_f()+22  6000000000129A70 ?
                              767104               6000000000015DD0 ?
                                                   9FFFFFFFFFFFF0C0 ?
                                                   6000000000015DD0 ?
                                                   9FFFFFFFFFFFC950 ?
                                                   600000000011D1C0 ?
sou2o()+240          call     _etext_f()+23058430  00000003C ? 000000004 ?
                              09017120608          9FFFFFFFFFFFF0C0 ?
opimai_real()+240    call     _etext_f()+23058430  9FFFFFFFFFFFF0E0 ?
                              09017120608          00000003C ? 000000004 ?
                                                   9FFFFFFFFFFFF0C0 ?
main()+352           call     _etext_f()+23058430  000000000 ?
                              09017120608          9FFFFFFFFFFFF110 ?
main_opd_entry()+80  call     _etext_f()+23058430  000000002 ?
                              09017120608          9FFFFFFFFFFFF5C0 ?
                                                   C000000000033910 ?
                                                   000000000 ?

--------------------- Binary Stack Dump ---------------------

MOS中沒有記錄進一步的資訊,不過根據後面的ORA-81錯誤,可以判斷,應該是會話進行退出登入的清理動作時,發現了記憶體中有部分地址不可讀,造成了這個錯誤的產生。

檢查trace還可以發現下面的資訊:

Memory dump of process state object:
Dump of memory from 0xC0000001E804BEE8 to 0xC0000001E804C6D8
C0000001E804BEE0                   ******** ********          [********]
C0000001E804BEF0 ******** ******** ******** ********  [****************]
        Repeat 125 times
C0000001E804C6D0 ******** ********                    [********]       
Symbolic dump of process state object:
kqfdumpvar: address 0xC0000001E804BEE8 cannot be dumped as type 'ksupr' (8 bytes are unreadable)
KSFD PGA DUMPS
Number of completed I/O requests=0 flags=0
END OF PROCESS STATE

顯然在處理PGA的時候,處理8個位元組的地址不可讀,導致了這個ORA-600錯誤。根據MOS中的記錄,由於錯誤發生在LOG OFF的時候,可以簡單的忽略這個問題,並不會對系統造成影響,而這個錯誤在10.2.0.411.1.0.6中被fixed

 

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

相關文章