ORA-00600: internal error code, arguments: [kcblasm_1], [103], [] bug
巡检发现存在alert 日志存在ORA-600
1.0 查询alter 对应的Trace日志
- /oracle/admin/fgsquery/udump/fgsquery_ora_21777.trc
- Oracle Database 10g Enterprise Edition Release 10.2.0.5. - 64bit Production
- Machine: x86_64
- Redo thread mounted by this instance:
- Oracle process number:
- Unix process pid: , image: oracle@pquerydb02
- *** ACTION NAME:(SQL 窗口 - 新建) -- ::13.082
- *** MODULE NAME:(PL/SQL Developer) -- ::13.082
- *** SERVICE NAME:(shangdi) -- ::13.082
- *** SESSION ID:(2125.22785) -- ::13.082
- *** -- ::13.082
- ksedmp: internal or fatal error
- ORA-: internal error code, arguments: [kcblasm_1], [], [], [], [], [], [], []
- Current SQL statement for this session:
- select *
- from ucontevent
- where eventtype= 'IBQ0010'
- and eventid in
- (select eventid from ulcinsureacctrace where confdate is null/* and cvalidate>date'2018-10-01'*/)
- ----- Call Stack Trace -----
- calling call entry argument values in hex
- location type point (? means dubious value)
- -------------------- -------- -------------------- ----------------------------
- ssd_unwind_bp: unhandled instruction at 0x3d12d0e instr=f
- ksedst()+ call ksedst1() ? ?
- 7FFF993CB020 ? 7FFF993CB080 ?
- 7FFF993CAFC0 ? ?
- ksedmp()+ call ksedst() ? ?
- 7FFF993CB020 ? 7FFF993CB080 ?
- 7FFF993CAFC0 ? ?
- ksfdmp()+ call ksedmp() ? ?
- 7FFF993CB020 ? 7FFF993CB080 ?
- 7FFF993CAFC0 ? ?
- kgerinv()+ call ksfdmp() 006AE9A20 ? ?
- 7FFF993CB020 ? 7FFF993CB080 ?
- 7FFF993CAFC0 ? ?
- kgeasnmierr()+ call kgerinv() 006AE9A20 ? 2AC380BF1168 ?
- 7FFF993CB080 ? 7FFF993CAFC0 ?
- ? ?
- kcblasm1()+ call kgeasnmierr() 006AE9A20 ? 2AC380BF1168 ?
- 7FFF993CB080 ? 7FFF993CAFC0 ?
- ? ?
- kcblasm()+ call kcblasm1() 2AC380ED9D08 ? 7FFF993CAFC0 ?
- 7FFF993CB080 ? 7FFF993CAFC0 ?
- ? ?
- kxhfFndFreeSlot()+ call kcblasm() 2AC380ED9D08 ? ?
- 7FFF993CB080 ? 7FFF993CAFC0 ?
- ? ?
- kxhfNewBuffer()+ call kxhfFndFreeSlot() 2AC380ED7A78 ? ?
- 7FFF993CB080 ? 7FFF993CAFC0 ?
- ? ?
- qerhjGetNewBuffer() call kxhfNewBuffer() 2AC380ED7A78 ? ?
- + ? 7FFF993CC1F8 ?
- ? ?
- ksxb1bqb()+ call qerhjGetNewBuffer() 7FFF993CC1F0 ? ?
- ? 7FFF993CC1F8 ?
- ? ?
- kxhrPack()+ call ksxb1bqb() 7FFF993CC1F0 ? 143F7BA64B ?
- ? 7FFF993CC1F8 ?
- ? ?
- qerhjSplitBuild()+ call kxhrPack() ? 143F7BA64B ?
- ? 7FFF993CC1F0 ?
- 7FFF21F8B302 ? ?
- qertbFetchByRowID() call qerhjSplitBuild() 7FFF993CC810 ? 143F7BA64B ?
- + 200D263A60 ? ?
- 7FFF21F8B302 ? ?
- rwsfcd()+ call qertbFetchByRowID() 200D264800 ? 002E88560 ?
- 7FFF993CC810 ? 000007FFE ?
- 7FFF21F8B302 ? ?
- qerhjFetch()+ call rwsfcd() 200D264800 ? 002E88560 ?
- 7FFF993CC810 ? 000007FFE ?
- 7FFF21F8B302 ? ?
- opifch2()+ call qerhjFetch() 200D263588 ? 003230DC2 ?
- 7FFF993CCE80 ? ?
- 7FFF21F8B302 ? ?
- opifch()+ call opifch2() ? ?
- 7FFF993CD060 ? 2AC380EDDAE0 ?
- 7FFF21F8B302 ? ?
- opiodr()+ call opifch() ? ?
- 7FFF993CD060 ? ?
- ? 0013B0002 ?
- ttcpip()+ call opiodr() ? ?
- 7FFF993CFDE8 ? ?
- 005BEAF88 ? 0013B0002 ?
- opitsk()+ call ttcpip() 006AF1FB0 ? 0054A51E0 ?
- 7FFF993CFDE8 ? ?
- 7FFF993CF8E8 ? 7FFF993CFF50 ?
- opiino()+ call opitsk() ? ?
- 7FFF993CFDE8 ? ?
- ? ?
- opiodr()+ call opiino() 00000003C ? ?
- 7FFF993D0FE8 ? ?
- ? ?
- opidrv()+ call opiodr() 00000003C ? ?
- 7FFF993D0FE8 ? ?
- 005BEB820 ? ?
- sou2o()+ call opidrv() 00000003C ? ?
- 7FFF993D0FE8 ? ?
- 005BEB820 ? ?
- opimai_real()+ call sou2o() 7FFF993D0FC0 ? 00000003C ?
- ? 7FFF993D0FE8 ?
- 005BEB820 ? ?
- main()+ call opimai_real() ? 7FFF993D1050 ?
- ? 7FFF993D0FE8 ?
- 005BEB820 ? ?
- __libc_start_main() call main() ? 7FFF993D1050 ?
- + ? 7FFF993D0FE8 ?
- 005BEB820 ? ?
- _start()+ call __libc_start_main() 00072D108 ? ?
- 7FFF993D11A8 ? ?
- 005BEB820 ? ?
- --------------------- Binary Stack Dump ---------------------
2.0 匹配Mos Bug
- ORA-600 [kcblasm_1] In 10.2.0.5. (文档 ID 1133845.1)
Oracle 内部错误,bug,解决方式安装小布丁,psu,大版本升级······- ORA-00600: internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], []
- The call stack in the generated trace file looks similar to:
- ... kcblasm1 kcblasm kxhfFndFreeSlot kxhfNewBuffer qerhjGetNewBuffer ksxb1bqb kxhrPack ... 根据函数堆栈调用,发现顺序非常匹配
- CAUSE
- This is is a known and common problem hit in 10.2.0.5, investigated and corrected in unpublished Bug 7612454.
- The problem was introduced in 10.2.0.5, by the fix of Bug:7523755.
- This has been corrected in PSU 10.2.0.5.4 and 11.2.
- Please refer to:
- Note 7612454.8 - Bug 7612454 - More "direct path read" operations / OERI:kcblasm_1
- CHANGES
- This problem is hit only in 10.2.0.5, up to PSU 10.2.0.5.4 in which problem is fixed.
- Problem is affecting 10.2.0.5 to 10.2.0.5.3.
- SOLUTION
- The quickest way to solve the problem is to apply PSU 10.2.0.5.4, Patch 12419392 or later.
- All alternative solutions for this problem are listed below:
- Upgrade the database to 11.2.
- - OR -
- Apply 10.2.0.5.4 Patch Set Update (Patch 12419392) or later PSUs where bug is fixed.
- The available PSUs are mentioned in "10.2.0.5 Patch Set Updates - List of Fixes in each PSU" (Document 1337394.1)
- - OR -
- Apply interim Patch 7612454 on top of 10.2.0.5 (10.2.0.5.0-10.2.0.5.3):
- For UNIX / Linux platforms apply Patch 7612454 available for download on MOS.
- For Windows platforms apply Patch 3 or higher.
- Please check Document 342443.1 for latest patches available for Windows on top of 10.2.0.5.
解决方案:1.升级数据库版本-11.2
2.patch 12419392 apply 10.2.0.5.4
3. patch 7612454 on top of 10.2.0.5 (10.2.0.5.0-10.2.0.5.3):
根据Mos的查询反馈结果,基本不会采纳,对问题sql进行查询
3.0 数据库查询信息
- 查询会话信息,ash已被刷出,使用awr视图查询
SQL>selelct sample_time,user_id,sql_id,event from v$active_session_history where sample_time between to_date('20181113 09','yyyymmdd hh24')- and to_date('20181113 13','yyyymmdd hh24') and session_id= and session_serial#=;
- SQL>select owner,object_type,status,object_name from dba_objects where object_name =upper('ucontevent') and object_type like '%TABLE%'
- OWNER OBJECT_TYPE STATUS OBJECT_NAME
- ------------------------------ ------------------- ------- ------------------------------
- LISPRDD TABLE VALID UCONTEVENT
SQL> select sample_time,user_id,sql_id,event from dba_hist_active_sess_history where sample_time between to_date('20181113 11','yyyymmdd hh24') and to_date('20181113 12','yyyymmdd hh24') and session_id=2125 and session_serial#=22785;
SAMPLE_TIME USER_ID SQL_ID EVENT
------------------------------ ---------- ------------- ----------------------------------------------------------------
13-NOV-18 11.04.18.479 AM 249 cxp0p771cnx1f
13-NOV-18 11.02.18.293 AM 249 42wvj1k385aun
13-NOV-18 11.01.18.193 AM 249 4bbwc4gsfxu33
USERNAME SQL_ID EVENT PROGRAM ACTION MACHINE PORT
---------- ------------- ---------- ------------------------------ -------------------------------- ------------------------------ ----------
ZKRWANGYB 4bbwc4gsfxu33 plsqldev.exe SQL 窗口 - 新建 WORKGROUP\PQZBLJVAPP1 59450
ZKRWANGYB 42wvj1k385aun plsqldev.exe SQL 窗口 - 新建 WORKGROUP\PQZBLJVAPP1 59450
ZKRWANGYB cxp0p771cnx1f plsqldev.exe SQL 窗口 - 新建 WORKGROUP\PQZBLJVAPP1 59450
Enter value for sql_id: 42wvj1k385aun
PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------
SQL_ID 42wvj1k385aun
--------------------
select * from ucontevent where eventtype = 'IBQ0010' and eventid in (select eventid
from ulcinsureacctrace where confdate is null )
Plan hash value: 3993290469
----------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
----------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | | 1218K(100)| |
| 1 | HASH JOIN SEMI | | 2282K| 298M| 274M| 1218K (2)| 04:03:46 |
| 2 | TABLE ACCESS BY INDEX ROWID| UCONTEVENT | 2282K| 248M| | 114K (1)| 00:22:50 |
| 3 | INDEX RANGE SCAN | UCONTEVENT_INDEX1 | 2282K| | | 6260 (1)| 00:01:16 |
| 4 | TABLE ACCESS FULL | ULCINSUREACCTRACE | 104M| 2289M| | 915K (2)| 03:03:09 |
----------------------------------------------------------------------------------------------------------
17 rows selected.
SQL>select owner,segment_name,sum(bytes)/1024/1024 from dba_segments where segment_name in('UCONTEVENT','ULCINSUREACCTRACE') group by segment_name,owner
OWNER SEGMENT_NAME SUM(BYTES)/1024/1024
------------------------------ ------------------------------ --------------------
LISPRDD ULCINSUREACCTRACE 33170
LISPRDD UCONTEVENT 8198
!SQL能否改写~全表扫描33G的数据量--只取部分数据
COUNT(*)
----------
106790272
SQL> select num_rows from dba_tables where owner='LISPRDD' and table_name=upper('ulcinsureacctrace');
NUM_ROWS
----------
105814076
SQL> select count(*) from LISPRDD.ulcinsureacctrace sample block(10);
COUNT(*)
----------
10946783
SQL> select last_analyzed from dba_tables where owner='LISPRDD' and table_name=upper('ulcinsureacctrace');
LAST_ANALYZED
-------------------
2018-11-16 22:10:25
SQL> select column_name,data_type,num_distinct,num_nulls,last_analyzed from dba_tab_columns where owner='LISPRDD' and table_name=upper('ulcinsureacctrace') and column_name in('EVENTID','CONFDATE');
COLUMN_NAME DATA_TYPE NUM_DISTINCT NUM_NULLS LAST_ANALYZED
------------------------------ ------------------------------ ------------ ---------- -------------------
EVENTID VARCHAR2 62115722 0 2018-11-16 22:10:25
CONFDATE DATE 150 105578361 2018-11-16 22:10:25
4.0 分析结论
- 问题分析后,此ora-600为一个bug,遭遇此报错的是一个pl/sql 开发人员,且写的sql效率非常低,非业务sql,因此此报错可忽略。 如果是业务sql频繁报错,可能计划打补丁;
- 本次建议,让开发人员对此sql进行优化处理,sql的查询逻辑是否有改进的空间。
ORA-00600: internal error code, arguments: [kcblasm_1], [103], [] bug的更多相关文章
- ORA-00600: internal error code, arguments: [kcblasm_1], [103], [], [], [], [], [], []
一ORACLE 10.2.0.5.0 标准版的数据库的告警日志出现ORA-00600错误,具体错误信息如下所示 Errors in file /u01/app/oracle/admin/SCM2/bd ...
- ORA-00600: internal error code, arguments: [kcblin_3], [103], [253952], [8192], [32769], [312], [640], [], [], [], [], []解决方法
昨晚,一SQL执行的时候报了ORA-00600: internal error code, arguments: [kcblin_3], [103], [253952], [8192], [32769 ...
- ORA-00600: internal error code, arguments: [4194]
使用PlateSpin复制出来的一数据库服务器(Oracle 10g)在启动数据库实例时遇到"ORA-00600: internal error code, arguments: [4194 ...
- ORA-00600: internal error code, arguments: [17281], [1001], [0x1FF863EE8], [], [], [], [], []
我们生产服务器中的一个数据库发出监控告警日志的邮件,内容如下所示,在31号09:11分出现了大名鼎鼎的ORA-00600错误. Dear All: The Instance xxx' alert lo ...
- ORA-00600: internal error code, arguments: [2662]
转自 http://www.eygle.com/archives/2005/12/oracle_diagnostics_howto_deal_2662_error.html 在ORA-00600 22 ...
- ORA-00600: internal error code, arguments: [13030], [20]一例解决
两年没有接触oracle了,中午,一环境update from的时候出现ORA-00600: internal error code, arguments: [13030], [20]异常,经查,官网 ...
- ORA-00600: internal error code, arguments: [2662], [0], [1106971], [0], [1107731], [12583040]
今天是2014-06-06,在进行数据库恢复的时候出现了一个久违的ora-600 [2662]错误.特整理例如以下: 问题描写叙述: system及数据文件误删,採用恢复数据文件的方式将数据库恢复到開 ...
- ORA-00600: internal error code, arguments: [kdBlkCheckError]
ORA-00600: internal error code, arguments: [kdBlkCheckError] Table of Contents 1. 现象 2. 分析 3. 故障处理 1 ...
- 07 oracle 归档模式 inactive/current redo log损坏修复--以及错误ORA-00600: internal error code, arguments: [2663], [0], [9710724], [0], [9711142], [], [], [], [], [], [], []
07 oracle 归档模式 inactive/current redo log损坏修复--以及错误ORA-00600: internal error code, arguments: [2663], ...
随机推荐
- POJ - 题解sol[暂停更新]
初期:一.基本算法: (1)枚举. (poj1753,poj2965) poj1753 话说我用高斯消元过了这题... poj2965 巧了,用高斯消元01矩阵更快(l o l). (2)贪心(poj ...
- ActiveMQ 配置jdbc主从
使用 jdbc 方式配置主从模式,持久化消息存放在数据库中. 在同一时刻,只有一个 master broker,master 接受客户端的连接,slave 不接受连接.当 master 因为关机而下线 ...
- maven plugins
<build> <finalName>lessons</finalName> <plugins> <plugin> <groupId& ...
- PAT-GPLT训练集 L2-001 紧急救援(最短路)
PAT-GPLT训练集 L2-001 紧急救援 题目大意:求最短路的条数,最短路中的权重和的最大值和这条最短路的路线 分析:使用dijkstra算法求出最短路,并且对dijkstra算法进行变化,设起 ...
- Oracle.数据的增删改、表操作(创建,修改,删除)、数据类型
SELECT ename,dname FROM emp,dept WHERE emp.deptno=dept.deptno; SELECT dname,loc FROM dept; SELECT JO ...
- php把数据转换为json格式
public function demos(){ $data=[ 'state'=>1, 'msg'=>'更新成功' ]; return json_encode($data); }
- day05 可变不可变类型
#可变类型: 值变了,但是id没有变,证明没有生成新的值而是在改变原值,原值是可变类型#不可变类型:值变了,id也跟着变,证明是生成了新的值而不是在改变原值,原值是不可变 # x=10# print( ...
- 最小生成树 Prim算法 和 Kruskal算法,c++描述
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- 《Python》进程之间的通信(IPC)、进程之间的数据共享、进程池
一.进程间通信---队列和管道(multiprocess.Queue.multiprocess.Pipe) 进程间通信:IPC(inter-Process Communication) 1.队列 概念 ...
- xshell无法在小键盘输入数字
自从很久之前用小键盘输入数字后出现奇怪的字母并换行后就不用小键盘,今天脑抽又用小键盘写数字,并决定解决问题. 原因分析: 当xshell终端类型不是"VT220"或者"A ...