2011-05-19

ORA-600 [kcblasm_1]

ORA-600 [kcblasm_1] When a SELECT With Hash Join Is Involved [ID 1133845.1]




Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.5.0 and later   [Release: 10.2 and later ]
Information in this document applies to any platform.

Symptoms


When executing a statement using a SELECT getting:
ORA-00600: internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], []

The execution plan from the ORA-600 trace file is showing hash join is used.
Call Stack is including:
kcblasm1 kcblasm kxhfFndFreeSlot kxhfNewBuffer qerhjGetNewBuffer ksxb1bqb kxhrPack

Cause


The issue was investigated in:
Bug 9800302 - 10.2.0.5 GETTING ORA-00600 [KCBLASM_1]
closed as duplicate of:Bug 7612454 - Abstract: DSS:PERF REGRESSIONS IN SERIAL DIRECT READS fixed in 11.2.
As per development team the number of slots available for direct I/Os (limited to 4096) forced the hash-join algorithm to operate on fewer number of slots and resulted in more spills to disk. This caused:
  • direct path IO to perform worse in 10.2.0.5 than earlier releases with more "direct path read" operations or
  • ORA-600 [kcblasm_1] errors.

Solution

1. Upgrade the database to 11.2.
OR
2. For UNIX / Linux platforms apply Patch 7612454 available for download on MOS. For Windows platforms apply Patch 3 or higher. Please check Note 342443.1 for latest patches available for Windows on top of 10.2.0.5.
If a patch is not currently available on top of your database version and/or platform please raise a Service Request to request for it.
Please be sure that your database version qualifies for getting a new patch as per Note 209768.1 and Note 742060.1.
OR
3. Use the workaround of setting:
"_hash_join_enabled"= false

Niciun comentariu:

Trimiteți un comentariu