This error has been shown in the alarm log for the past two days:
ORA-00600: Internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], [], []
Tue Aug 12 09:20:17 CST 2014
Errors in file/u01/APP/Oracle/admin/orcl/udump/orcl_ora_29974.trc:
ORA-00600: Internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], [], []
Tue Aug 12 09:30:17 CST 2014
Errors in file/u01/APP/Oracle/admin/orcl/udump/orcl_ora_30084.trc:
ORA-00600: Internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], [], []
Tue Aug 12 09:40:17 CST 2014
Errors in file/u01/APP/Oracle/admin/orcl/udump/orcl_ora_29919.trc:
ORA-00600: Internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], [], []
Solution for online query:
1: temporary solution
If the execution plan is caused by hash join, set "_ hash_join_enable" = false in the Session Layer, for example, alter session set "_ hash_join_enabled" = false;
If the execution plan is caused by hash group by, set "_ gby_hash_aggregation_enabled" = false
2: Fundamental Solution
2. 1. Optimize SQL statements to avoid bugs;
2. Upgrade
(1) update the database PSU to 10.2.0.5.4 and 11.2 to correct this problem.
(2) For versions 10.2.0.5.0 to 10.2.0.5.3, patch 7612454 should be used to avoid errors (this patch replaces the kcbl. o file in Lib ).
Example of a temporary solution:
Trace the trace file in the alarm log and find the SQL statement that causes this error.
ORA-00600: Internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], [], []
Current SQL statement for this session:
The formatted SQL statement is as follows:
Select indentdate,
Indentgroup,
Transdate,
Transby,
Transgroup,
Feedbackby,
Feedbackgroup,
Financedate,
Financeby,
Financegroup,
Totalcost,
A. totalpay,
Pay_cash,
Pay_points,
Pay_advance1,
Pay_advance2,
Pay_type,
Trans_pay,
Discount_staff,
Discount_special,
Gain_cash,
Gain_points,
Gain_advance1,
Gain_advance2,
Trans_custname,
Trans_tel,
Trans_province,
Trans_city,
Trans_address,
Trans_zipcode,
Trans_weight,
Trans_comments,
Indent_comments,
Indent_id,
A. partner_guid,
A. proxy_guid,
Trans_tel2,
Cust_media_id,
Cust_partner_guid,
Cust_proxy_guid,
Partner_value,
Proxy_value,
Cust_partner_value,
Cust_proxy_value,
Dealby,
A. failreason,
Isfoot,
S_reasonid,
Dealfailreason,
A. pre_fund,
Media_calltype,
Pre_advance,
Web_flag,
Need_invoice,
Invoice_title,
Trans_area,
Ordertype,
Pay_pointsprice,
A. Media,
Userdefinedstatus,
Customername,
Customerid
From elite. tabcindent
Left join elite. Objective B
On a. relation_id = B. objective_guid
Left join elite. Customer C
On a. customer_guid = C. customer_guid
Where (indentdate between: 1 and: 2 or B. modifieddate between: 3 and: 4 );
Replace the variable: 1,: 2,: 3,: 4 with a specific value. Execute:
Select indentdate,
Indentgroup,
Transdate,
Transby,
Transgroup,
Feedbackby,
Feedbackgroup,
Financedate,
Financeby,
Financegroup,
Totalcost,
A. totalpay,
Pay_cash,
Pay_points,
Pay_advance1,
Pay_advance2,
Pay_type,
Trans_pay,
Discount_staff,
Discount_special,
Gain_cash,
Gain_points,
Gain_advance1,
Gain_advance2,
Trans_custname,
Trans_tel,
Trans_province,
Trans_city,
Trans_address,
Trans_zipcode,
Trans_weight,
Trans_comments,
Indent_comments,
Indent_id,
A. partner_guid,
A. proxy_guid,
Trans_tel2,
Cust_media_id,
Cust_partner_guid,
Cust_proxy_guid,
Partner_value,
Proxy_value,
Cust_partner_value,
Cust_proxy_value,
Dealby,
A. failreason,
Isfoot,
S_reasonid,
Dealfailreason,
A. pre_fund,
Media_calltype,
Pre_advance,
Web_flag,
Need_invoice,
Invoice_title,
Trans_area,
Ordertype,
Pay_pointsprice,
A. Media,
Userdefinedstatus,
Customername,
Customerid
From elite. tabcindent
Left join elite. Objective B
On a. relation_id = B. objective_guid
Left join elite. Customer C
On a. customer_guid = C. customer_guid
Where (indentdate between '2014-06-19 'and '2014-08-19' or B. modifieddate between' 2012-06-19 'and '2014-08-1 ');
Execution error:
Solution:
Alter session set "_ hash_join_enabled" = false;
Alter session set "_ gby_hash_aggregation_enabled" = false
-- Try it first. If one solution is used, there is no need to set another one.
Then run the preceding query statement again. No error is reported.
Succeeded. (* ^__ ^ *) Hey ......
Let the developer add this command to the program.