防锈漆规格:ORA --600--qerrmObnd1
来源:百度文库 编辑:九乡新闻网 时间:2024/04/30 06:01:40
基本情况:
nmjf2$oslevel -r
5300-05
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release
PL/SQL Release
CORE
TNS for IBM/AIX RISC System/6000: Version
NLSRTL Version
警告日志:
Errors in file /oracle/app/oracle/admin/jfnm/udump/jfnm_ora_1224740.trc:
ORA-00600: internal error code, arguments: [qerrmObnd1], [932], [ORA-00932: inconsistent datatypes: expected got
], [], [], [], [], []
Wed Jun 24 10:39:17 2009
Errors in file /oracle/app/oracle/admin/jfnm/udump/jfnm_ora_1224740.trc:
ORA-07445: exception encountered: core dump [] [] [] [] [] []
ORA-00600: internal error code, arguments: [qerrmObnd1], [932], [ORA-00932: inconsistent datatypes: expected got
], [], [], [], [], []
部分TRACE文件部分:
nmjf2$more /oracle/app/oracle/admin/jfnm/udump/jfnm_ora_1224740.trc
/oracle/app/oracle/admin/jfnm/udump/jfnm_ora_1224740.trc
Oracle9i Enterprise Edition Release
With the Partitioning option
JServer Release
ORACLE_HOME = /oracle/app/oracle/product/
System name: AIX
Node name: nmjf2
Release: 3
Version: 5
Machine: 000B91E0D600
Instance name: jfnm
Redo thread mounted by this instance: 1
Oracle process number: 109
Unix process pid: 1224740, image: oracle@nmjf2 (TNS V1-V3)
*** SESSION ID:(115.61382) 2009-06-24 10:39:16.639
*** 2009-06-24 10:39:16.639
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [qerrmObnd1], [932], [ORA-00932: inconsistent datatypes: expected got
], [], [], [], [], []
Current SQL statement for this session:
select a.cardno,a.saledate,a.saleempid,a.saledeptid,a.companyid,c.frameworkname
from tab_card@dl_zhyz
where to_char(a.vadate,:"SYS_B_0")=:"SYS_B_1" and a.cardtypeid =:"SYS_B_2"
and a.cardno= b.serialnumber and b.type =:"SYS_B_3" and a.companyid=c.frameworkid
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp+0148 bl ksedst
ksfdmp+0018 bl 01FDA694
kgerinv+00e8 bl _ptrgl
kgesinv+0020 bl kgerinv FFFFFFFFFFF8710 ? 000000000 ?
10054AA48 ? 000000000 ?
000000000 ?
ksesin+
FFFFFFFFFFF8780 ?
OCIKSIN+
000000000 ?
000000001 ? 000000032 ?
FFFFFFFFFFF8784 ? 000008080 ?
qerrmObnd+01b4 bl OCIKSIN 11032BF70 ? 11025FD48 ?
00000009B ?
qerrmOStart+
FFFFFFFFFFF8DE8 ? 11025FD48 ?
qerrmStart+
000000000 ?
rwsstd+0058 bl _ptrgl
qerhjStart+00cc bl _ptrgl
rwsstd+0058 bl _ptrgl
qerhjFetch+0244 bl _ptrgl
kpofrws+0118 bl 01FDA588
opifch2+
000000000 ? 1101CB8E8 ?
000000000 ?
opiall0+1268 bl opifch2 70000002DD
FFFFFFFFFFF9EA8 ?
kpoal8+
FFFFFFFFFFFA
FFFFFFFFFFFA
080000000 ? 4000000007FFF ?
opiodr+08cc bl _ptrgl
ttcpip+0cc4 bl _ptrgl
opitsk+0d60 bl ttcpip 11000CE68 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
opiino+0758 bl opitsk 000000000 ? 000000000 ?
opiodr+08cc bl _ptrgl
opidrv+
FFFFFFFFFFFF
sou2o+0028 bl opidrv
FFFFFFFFFFFF
main+0138 bl 01FDA480
__start+0098 bl main 000000000 ? 000000000 ?
--------------------- Binary Stack Dump ---------------------
引起BUG的SQL
select a.cardno,a.saledate,a.saleempid,a.saledeptid,a.companyid,c.frameworkname
from tab_card@dl_zhyz
where to_char(a.vadate,:"SYS_B_0")=:"SYS_B_1" and a.cardtypeid =:"SYS_B_2"
and a.cardno= b.serialnumber and b.type =:"SYS_B_3" and a.companyid=c.frameworkid
问题分析:
SQL> show parameter cursor
NAME TYPE VALUE
------------------------------------ -------------------------------- ------------------------------
cursor_sharing string SIMILAR
cursor_space_for_time boolean FALSE
open_cursors integer 300
session_cached_cursors integer 0
SQL>
由于CURSOR_SHARING=FORCE或者SIMILAR,SQL通过DB LINK访问远程的数据替换了DATE格式的掩码信息会导致抛出这个错误。
参见METALINK
NOTE458647.1和NOTE371528.1
Cause
The cause of this problem has been identified and verified in unpublished Bug 4254094.
This problem appears to have been introduced in the
When CURSOR_SHARING = FORCE or SIMILAR then SQL over database links which involves replaced date format mask information can result in ORA-600 [qerrmobnd1] and a dump in qerrmOdcl.
由于PATCH 4254094中没有针对于AIX平台的补丁,所以如果需要修改BUG建议修改隐含参数_adjust_literal_replacement = TRUE
确认_adjust_literal_replacement当前的值
SQL> select ksppinm as "Hidden Parameter",
2 ksppstvl as "Value"
3 from x$ksppi join x$ksppcv
4 using (indx)
5 where ksppinm = '_adjust_literal_replacement';
Hidden Parameter
----------------------------------------------------------------
Value
--------------------------------------------------------------------------------
_adjust_literal_replacement
FALSE
修改:
alter system set "_adjust_literal_replacement"=true scope=spfile;