ORA-00600: 内部错误代码, 参数: [kkdoilsn1]


数据库的一台备库报错:

    ORA-00600: 内部错误代码, 参数: [kkdoilsn1], [], [], [], [], [], [], [], [], [], [], []

    根据trace文件,发现报错的sql语句是:select * from xxxxx where xx

    那么,这个错误是什么意思呢?ORA-00600 [Kkdoilsn1] When Attempting To Move LOB Using ALTER Command

查询资料发现:

APPLIES TO:

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 9.2.0.7 - Release: 9.2 to 9.2
Information in this document applies to any platform.

但是,好像11g也会有这个错误。

SYMPTOMS

Attempting to move LOB using an alter command fails with the following error and stack trace:
ORA-00600: internal error code, arguments: [kkdoilsn1], [], [], [], [], [], [], []

 ----- Call Stack Trace -----
kkdoilsn kkdoilci kkdollb kkdolsci kkdolsoi kkdlgsci
kkdlgcd qcscif qcsrctq qcswrc qcsrcr qcsrnr qcsridn qcsraic qcspqb kkmdrv 

trace文件中有如下:

kkdoilsn()+1423      call    kgeasnmierr()        00A99D540 ? 2B4AFF4712A0 ?
                                                  9E7B514000000000 ?
                                                  000000000 ? 000000000 ?
                                                  9D13DF398 ?
kkdoilci()+338      call    kkdoilsn()          A0EC81A10 ? 2B4AFF4712A0 ?
                                                  000000000 ? 949724AE0 ?
                                                  000000000 ? 9D13DF398 ?
kkdollb()+239        call    kkdoilci()          A0EC81A10 ? 91DD07220 ?
                                                  000000000 ? 000000000 ?
                                                  000000000 ? 949724AE0 ?
kkdolsci()+119      call    kkdollb()            A0EC81A10 ? 949724B88 ?
                                                  91DD07288 ? 000000002 ?
                                                  000000000 ? 949724AE0 ?
kkdolsoi()+74        call    kkdolsci()          A0EC81A10 ? 00000001E ?
                                                  000000002 ? 000000000 ?
                                                  000000000 ? 949724AE0 ?
kkdlgcd()+191        call    kkdolsoi()          A0EC81A10 ? 2B4AFF820B18 ?
                                                  000000002 ? 000000000 ?
                                                  000000000 ? 949724AE0 ?
__PGOSF148_kkmfbtcn  call    kkdlgcd()            2B4AFF461BD8 ? 2B4AFF4658F8 ?
()+10                                              000000002 ? 000000000 ?

CAUSE

This is an internal Bug:2766299, this bug will not be visable via Metalink
@NOTE:  Per Oracle development, this will be fixed in Oracle 9.2.0.8.0 and above;

SOLUTION


Use export and import to move the segment.
 
Bug:2766299 is fixed in 10G


这个文档好像不太准确。

实际情况,并没有move一个lob对象,而是将一个表的字段alter成lob类型,最后只是fush了一下buffer cache就解决了。(share pool应该不用flush)

GoldenGate不使用数据泵完成Oracle-Oracle的双向复制

使用GoldenGate的数据泵进行Oracle-Oracle的单向复制

如何对 Oracle 数据泵(expdp/impdp) 进行 debug

Oracle 数据库导出数据泵(EXPDP)文件存放的位置

Oracle 10g 数据泵分区表的导出

相关内容