2010-12-14

kxtotolc_lobopt

ORA-00600 [kxtotolc_lobopt] When Getting An Explain For a Statement With Bind Variables (Doc ID 1050592.1)


You could be attempting to get an Explain Plan for a SQL statement that have bind variables, and getting an ORA-00600 [kxtotolc_lobopt]. For example:

SQL> explain plan for UPDATE TABLE SET COLUMN1=:B2 WHERE COLUMN2=891;
explain plan for UPDATE TABLE SET COLUMN1=:B2 WHERE COLUMN2=891
*
ERROR at line 1:
ORA-600: internal error code, arguments: [kxtotolc_lobopt], [], [], [], [], [], [], [], [], [], [], []

But without the bind variables, it works fine:

SQL> explain plan for UPDATE TABLE SET COLUMN1=1234 WHERE COLUMN2=891;
.
Explained.

The call stack trace could look like:

kxtotolc <- kxtoropn <- kxtorab <- VInfreq__kxtopre <- updLoadTriggers
<- updpre0 <- qkadml <- qkastmt <- qkadrv <- opitca<- PGOSF360__kksFull <- TypeCheck <- rpiswu2 <- kksSetBindType <- kksfbc


Cause
This is caused by unpublished Bug 7265176, which explains that an ORA-00600 [kxtotolc_lobopt] could be seen when trying to get an Explain Plan for a SQL statement that has bind variables.

Solution
1-Upgrade to 11gR2 where unpublished Bug 7265176 is fixed.
Or
2-Apply Patch 7265176 if available for your DB version and OS platform.

Niciun comentariu:

Trimiteți un comentariu