oracle opidrv,华创信科oracle培训:数据库ORA-600[kcbchg1_6]解决

华创信科oracle培训:数据库ORA-600[kcbchg1_6]解决。

cd70be94fdab8608e4c64a7f0ab33cd5.png

1.背景描述

从2008年12月31日开始,数据库在执行大的update语句是出现ORA-600[kcbchg1_6]报错,导致部分业务无法正常完成。

2.原因分析

从metalink找到文档Doc ID: 745188.1(ORA-600 [kcbchg1_6] And ORA_600 [13011 After Installtion of Patch 5868257),在这个问题的描述中,和辽宁省电信出的问题非象吻合,以下是Metalink的原文:

Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.4

HP-UX Itanium

HP IA64 HPUNIX

Symptoms

After installation of Patch 5868257, it's possible to get the ORA-00600: [kcbchg1_6]

errors during update and ORA-600 [13011] errors on some occasions.

----- Call Stack Trace -----

ksedst

Changes

After installation of Patch 5868257.

Cause

The first version of Patch 5868257 has been created with a wrong compiler optimization.

Solution

A new version of Patch 5868257 has been done.

Simply backout the original fix and download the new version of OCT-23-2008.

在ARDB数据库的报错trace文件中,产生的call stack trace如下:

----- 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 ?

4000000003F956E0 ?

000000000 ? 000000000 ?

000000000 ?

ksfdmp()+48          call     ksedmp()             000000003 ?

kgerinv()+304        call     ksfdmp()             C000000000000612 ?

000000003 ?

400000000942D5D0 ?

00002E90B ? 000000000 ?

000000000 ?

kgeasnmierr()+144    call     kgerinv()            6000000000031340 ?

40000000019C1B80 ?

60000000000323F8 ?

40000000019C1B80 ?

9FFFFFFFFFFF27E0 ?

$cold_kcbchg1_main(  call     kgeasnmierr()        6000000000031340 ?

)+2096                                             60000000001FAD20 ?

60000000001FAD30 ?

6000000000032770 ?

000000010 ? 000000000 ?

C0000000000023CF ?

4000000002DD7810 ?

kcbchg1()+272        call     $cold_kcbchg1_main(  000000000 ? 000000002 ?

)                    9FFFFFFFFFFF32A8 ?

9FFFFFFFFFFF32D8 ?

000000000 ? 000000000 ?

ktuchg()+2000        call     kcbchg1()            000000000 ? 000000002 ?

9FFFFFFFFFFF32A8 ?

9FFFFFFFFFFF32D8 ?

000000000 ? 000000000 ?

9FFFFFFFFFFF2C00 ?

60000000000B5D40 ?

ktbchg2()+704        call     ktuchg()             000000002 ? 000000000 ?

000000001 ? 000000000 ?

000000001 ?

60000000001E9070 ?

60000000000C6188 ?

60000000000C29F0 ?

kdu_array_flush()+4  call     ktbchg2()            60000000000C29E0 ?

816                                                C0000003836D2DE8 ?

000000000 ?

60000000001EB938 ?

60000000001E9070 ?

9FFFFFFF7FBCA5A8 ?

60000000001EB870 ?

9FFFFFFFFFFF35F8 ?

qerupFetch()+2512    call     kdu_array_flush()    9FFFFFFFFFFF3F20 ?

4000000002C25BD0 ?

9FFFFFFFFFFF36F0 ?

60000000000B5D40 ?

0000284DD ?

9FFFFFFFFFFF39F8 ?

updaul()+3552        call     qerupFetch()         C0000003836D3218 ?

000000000 ?

9FFFFFFFFFFF3F38 ?

000007FFF ?

9FFFFFFFFFFF3F30 ?

60000000000B5D40 ?

9FFFFFFFFFFF46C0 ?

C00000000000193A ?

updThreePhaseExe()+  call     updaul()             9FFFFFFF7FBC9B2C ?

2928                                               9FFFFFFFFFFF4C2C ?

600000000003B7D0 ?

9FFFFFFFFFFF4700 ?

60000000000B5D40 ?

9FFFFFFFFFFF5150 ?

4000000002FD0D60 ?

0000282D1 ?

updexe()+736         call     updThreePhaseExe()   C0000003A45AC448 ?

000000000 ?

9FFFFFFF7FBCA560 ?

9FFFFFFFFFFF5200 ?

opiexe()+7872        call     updexe()             C0000003A45AC448 ?

C0000003836D2E7C ?

C0000003836D2E50 ?

9FFFFFFF7FBCA560 ?

9FFFFFFF7FBC9B40 ?

9FFFFFFF7FBC9B2C ?

C0000003836D318C ?

9FFFFFFF7FBC9B20 ?

kpoal8()+3872        call     opiexe()             9FFFFFFFFFFF70A0 ?

4000000002A511E0 ?

00001E815 ?

9FFFFFFFFFFF5420 ?

60000000000B5D40 ?

C0000000000012AD ?

60000000000C27C8 ?

60000000000314C0 ?

opiodr()+2128        call     kpoal8()             9FFFFFFFFFFF77D0 ?

C000000000001530 ?

9FFFFFFFFFFF9EB0 ?

9FFFFFFFFFFF70F0 ?

60000000000B5D40 ?

9FFFFFFF7FBC7F90 ?

ttcpip()+1680        call     opiodr()             00000005E ? 000000017 ?

4000000001AD5D80 ?

0000046B0 ?

9FFFFFFFFFFF77E0 ?

opitsk()+2336        call     ttcpip()             600000000003D0C0 ?

000000001 ?

9FFFFFFFFFFF9EB0 ?

000000001 ?

9FFFFFFFFFFFA020 ?

9FFFFFFFFFFF9E14 ?

4000000001BBBD60 ?

000000000 ?

opiino()+1840        call     opitsk()             000000000 ? 000000000 ?

60000000000B5D40 ?

40000000027C7430 ?

0000180CD ?

4000000001AD5D98 ?

opiodr()+2128        call     opiino()             00000003C ?

9FFFFFFFFFFFC870 ?

9FFFFFFFFFFFF010 ?

9FFFFFFFFFFFBD30 ?

60000000000B5D40 ?

C000000000001530 ?

opidrv()+1088        call     opiodr()             00000003C ? 000000004 ?

4000000001AD5830 ?

0000046B0 ?

9FFFFFFFFFFFC880 ?

60000000000B5D40 ?

sou2o()+336          call     opidrv()             00000003C ?

9FFFFFFFFFFFF010 ?

60000000000C27C0 ?

opimai_real()+224    call     sou2o()              9FFFFFFFFFFFF030 ?

00000003C ? 000000004 ?

9FFFFFFFFFFFF010 ?

main()+368           call     opimai_real()        000000000 ?

9FFFFFFFFFFFF060 ?

main_opd_entry()+80  call     main()               000000002 ?

9FFFFFFFFFFFF4F8 ?

60000000000B5D40 ?

C000000000000004 ?

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

和文档描述的call stack trace一致,说明是同样的问题。

3.需要确认的问题

从数据库的install_xxx.log中确认是否存在补丁5868257已被安装,也可以通过RDA收集opatch的安装记录确定是否存在补丁5868257,并确定补丁安装的日期是在OCT-23-2008之前。

4.解决办法

通过更新OCT-23-2008后新版的补丁5868257。补丁文件名为p5868257_10204_HPUX-IA64.zip。

在更新补丁之前请备份现有的Oracle软件。

5.忠告

更件补丁存在一定的风险,请在有丰富经验的工程师的指导下更新补丁。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值