巡检发现存在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

 SQL>  select username,sql_id,event,program,action,machine,port from dba_hist_active_sess_history a,dba_users b where a.user_id=b.user_id and sample_time between to_date('20181113 11','yyyymmdd hh24') and to_date('20181113 12','yyyymmdd hh24') and session_id=2125 and session_serial#=22785;

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 

 
 
 
SQL>  select * from table(dbms_xplan.display_awr('&sql_id'))
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的数据量--只取部分数据


 SQL> select count(*) from (select eventid from LISPRDD.ulcinsureacctrace where confdate is null);
  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的更多相关文章

  1. 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 ...

  2. 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 ...

  3. ORA-00600: internal error code, arguments: [4194]

    使用PlateSpin复制出来的一数据库服务器(Oracle 10g)在启动数据库实例时遇到"ORA-00600: internal error code, arguments: [4194 ...

  4. ORA-00600: internal error code, arguments: [17281], [1001], [0x1FF863EE8], [], [], [], [], []

    我们生产服务器中的一个数据库发出监控告警日志的邮件,内容如下所示,在31号09:11分出现了大名鼎鼎的ORA-00600错误. Dear All: The Instance xxx' alert lo ...

  5. ORA-00600: internal error code, arguments: [2662]

    转自 http://www.eygle.com/archives/2005/12/oracle_diagnostics_howto_deal_2662_error.html 在ORA-00600 22 ...

  6. ORA-00600: internal error code, arguments: [13030], [20]一例解决

    两年没有接触oracle了,中午,一环境update from的时候出现ORA-00600: internal error code, arguments: [13030], [20]异常,经查,官网 ...

  7. ORA-00600: internal error code, arguments: [2662], [0], [1106971], [0], [1107731], [12583040]

    今天是2014-06-06,在进行数据库恢复的时候出现了一个久违的ora-600 [2662]错误.特整理例如以下: 问题描写叙述: system及数据文件误删,採用恢复数据文件的方式将数据库恢复到開 ...

  8. ORA-00600: internal error code, arguments: [kdBlkCheckError]

    ORA-00600: internal error code, arguments: [kdBlkCheckError] Table of Contents 1. 现象 2. 分析 3. 故障处理 1 ...

  9. 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], ...

随机推荐

  1. python中RabbitMQ的使用(交换机,广播形式)

    简介 如果要让每个接收端都能收到消息,此时需要将消息广播出去,需要使用交换机. 工作原理 消息发送端先将消息发送给交换机,交换机再将消息发送到绑定的消息队列,而后每个接收端都能从各自的消息队列里接收到 ...

  2. 六、持久层框架(Hibernate)

    一.乐观锁 Hibernate使用乐观锁来处理脏数据问题. 比如有这样一个制造脏数据的场景: 1.通过session1得到id=1的对象product1 2.在product1原来的价格基础上增加10 ...

  3. Hibernate 加载策略得总结

    Hibernate 加载策略得总结 加载策略(优化查询): 策略种类: 延迟加载: 等到使用的时候才会加载数据. 立即加载: 不管使用不使用,都会立刻将数据加载. 策略的应用: 类级别的加载策略. 关 ...

  4. Binary Analysis Tool安装使用教程

    Binary Analysis Tool(BAT)是一个用于检测二进制文件使用到的开源组件,协助及早发现程序发布后可能会面临的开源协议解执的开源免费检测工具. 一.安装BAT和bat-extratoo ...

  5. 微信小程序生成二维码

    微信小程序客户端生成二维码的方法, 请参考这里: https://github.com/demi520/wxapp-qrcode  代码片段如下: const QR = require(". ...

  6. @Configuration的使用 和作用

    1从spring4.0以后,@Spring boot Application就包含了@ComponentScan,@ComponentScan就不用写了 2@MapperScan(basePackag ...

  7. js代码之编程习惯

    编程习惯: 异常处理 如果你没有使用异常处理的习惯,这可能是因为你并未真正的理解它的作用.当你正确使用异常处理之后,你会发现你的代码最显著的变化就是:少了很多的 if-else 语句 . 虽然在 JS ...

  8. 关于datetimepicker只显示年、月、日的设置

    如下是只显示月的sample code: <link rel="stylesheet" href="css/datetimepicker/bootstrap-dat ...

  9. Zookeeper面试题

    Zookeeper是什么框架 分布式的.开源的分布式应用程序协调服务,原本是Hadoop.HBase的一个重要组件.它为分布式应用提供一致性服务的软件,包括:配置维护.域名服务.分布式同步.组服务等. ...

  10. C++中类的静态成员与实例成员的区别

    C++中类的静态成员与实例成员的区别 1.有static修饰的成员变量或成员函数称为静态成员. 2.在内存中,类的静态数据成员占有一块特定的内存空间,被该类的所有实例(对象)共享.而同一个类的不同对象 ...