ORA-600 [kgh_heap_sizes:ds], ORA-600 [17147], Database Crash on Update of Table WIth Functional Index (Doc ID 556599.1)

Last updated on JUNE 13, 2013

Applies to:

Oracle Database - Enterprise Edition - Version 9.2.0.7 to 10.2.0.3 [Release 9.2 to 10.2]
Information in this document applies to any platform.
***Checked for relevance on 06-Oct-2011***
***Checked for relevance on 13-Mar-2013***


Symptoms

The database crashed after the following errors:

ORA-00600: internal error code, arguments: [kgh_heap_sizes:ds], [0x09BCE9F78], [], [], [], [], [],
[]
ORA-00600: internal error code, arguments: [17147], [0x09BCE9F60], [], [], [], [], [], []
ORA-00600: internal error code, arguments: [17112], [0x09BCE9F60], [], [], [], [], [], []
PMON: terminating instance due to error 472 

The failing SQL showed an update to a table with a functional index, in this case an xmltype.

update "NEXTSA"."milestoneGlobalView" 
set object_value = xmltype(:1) 
where existsNode(object_value,'/milestoneGlobalView[@docType="milestoneGlobalView" and @objectId=2]') = 1 

The call stack for the ORA-600 [kgh_heap_sizes:ds] had the following entry points:

----- Call Stack Trace -----
kgerinv <- kgesinv <- kgesin <- kghnerror <- kgh_heap_sizes <- kksCalculateHeapsSize <- kksEndOfCompile <- opitca <- kksFullTypeCheck <- rpiswu2 <- kksSetBindType <- kksfbc <- opiexe <- kpoal8 <- opiodr <- ttcpip <- opitsk <- opiino <- opiodr <- opidrv <- sou2o <- opimai_real <- main <- libc_start_main <- start

The tracefile contained this text:

[***** Internal heap ERROR kgh_heap_sizes:ds addr=0x9bce9f78 ds=0xab8b9ed0 *****
***** Dump of memory around addr 0x9bce9f78: 
. . .
09BCE9F10 01810180 01830182 01850184 01870186  [................]
09BCE9F20 01890188 018B018A 018D018C 018F018E  [................]
09BCE9F30 01910190 01930192 01950194 01970196  [................]
09BCE9F40 01990198 019B019A 019D019C 019F019E  [................]
09BCE9F50 01A101A0 01A301A2 01A501A4 01A701A6  [................]
09BCE9F60 01A901A8 01AB01AA 00170016 00190018  [................]
09BCE9F70 001B001A 001D001C 001F001E 00210020  [............ .!.]
09BCE9F80 00230022 00250024 00270026 00290028  [".#.$.%.&.'.(.).]
. . .
EXTENT 288 addr=0x9bce9f78
ERROR extent at 0x9bce9f78 contains wrong ds 0x210020001f001e
. . .
******************************************************
HEAP DUMP heap name="sql area"  desc=0xab8b9ed0

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms