ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORA-7445(prscoldrp)

ORA-7445(prscoldrp)

原创 Linux操作系统 作者:yangtingkun 时间:2007-11-30 00:00:00 0 删除 编辑

今天在数据库中发现了一个ORA-7445错误,第一个错误函数为prscoldrp


查询trace文件时发现,文件中没有记录导致错误的SQL

ORA-07445: 出现异常: 核心转储 [00000001016B5F0C] [SIGSEGV] [Address not mapped to object] [0x0000000C0] [] []
No current SQL statement being executed.
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp()+328 CALL ksedst()+0 FFFFFFFF7FFF6360 ?
000000000 ? 000000000 ?
00000003E ?
FFFFFFFF7FFF6BF8 ?
1031D6908 ?
ssexhd()+604 CALL ksedmp()+0 000000000 ? 000103400 ?
0001035DA ? 000102C00 ?
1035DA000 ? 1035DAE28 ?
sigacthandler()+44 PTR_CALL 0000000000000000 1035E2000 ?
FFFFFFFF7FFF7B90 ?
000000000 ? 000000001 ?
1035DFFD8 ? 00000000B ?
prscoldrp()+12 PTR_CALL 0000000000000000 00000000B ?
FFFFFFFF7FFF7B90 ?
FFFFFFFF7FFF78B0 ?
00000000B ? 000000000 ?
000000000 ?
prspo_proc_opts()+3 CALL prscoldrp()+0 000000000 ? 000000000 ?
8068 000000001 ? 000000000 ?
000000000 ? 000000000 ?
prsctc()+976 CALL prspo_proc_opts()+0 000080000 ? 1035E5598 ?
FFFFFFFF7D05D198 ?
000000000 ? 000000000 ?
000000002 ?
prscmd()+796 CALL prscre()+0 000000001 ? 0000000AF ?
0000000AF ? 00000001D ?
1035E30A8 ?
FFFFFFFF7D05D198 ?

没有错误的SQL就很难查询造成错误的原因,不过从METALINK上看,导致这个错误的情况并不多,Metalink上面一共只有三条相关信息,而且本质上还都是同一个错误。

其中Note:292265.1的描述最为详细。对比当前的trace文件,发现除了错误函数一样,还有很多相似的地方,比如这种情况下CURRENT SQL都为空。

但是仍然无法确定就是这个BUG造成的,仔细查询了trace文件,终于在后面的Cursor信息中找到了错误的语句:

******************** Cursor Dump ************************
Current cursor: 1, pgadep: 0
pgactx: ffffffff7d05cd48 ctxcbk: ffffffff7d05d198 ctxqbc: ffffffff7d05bcc8 ctxrws: 0
Cursor Dump:
----------------------------------------
Cursor 1 (ffffffff7d060490): CURNULL curiob: ffffffff7d064e08
curflg: 44 curpar: 0 curusr: 0 curses 4012c535bf8
cursor name: create table zj_lnyt1_1122_1 set select * from zj_lnyt1_1122
child pin: 0, child lock: ffffffff7d05e758, parent lock: ffffffff7d05f960
xscflg: 804008, parent handle: ffffffff7d05f7b0, xscfl2: 0
End of cursor dump
***************** dump of cursor xsc=ffffffff7d064e08 **********************

果然是由于语法中错误的包含了SET造成的。只不过,Metalink中记录的是INDEXCLUSTER的语法中包含SET造成的错误,而这里碰到的是CREATE TABLE时出现的错误。

这个错误并没有太大的影响,Oracle在10g中已经修改了这个bug,在碰到类似的情况时只会报语法错误,而不是ORA-7445错误。

最后,验证一下是否可以重现这个问题:

SQL> SELECT * FROM V$VERSION;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.4.0 -
Production PL/SQL Release 9.2.0.4.0 - Production
CORE 9.2.0.3.0 Production
TNS for Linux: Version 9.2.0.4.0 - Production
NLSRTL Version 9.2.0.4.0 - Production

SQL> CREATE TABLE T_SET SET SELECT * FROM V$VERSION;
CREATE TABLE T_SET SET SELECT * FROM V$VERSION
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel


SQL> HOST
[oracle@demo2 oracle]$ cd /opt/ora9/admin/testdata/bdump
[oracle@demo2 bdump]$ tail -10 alert_testdata.log
Current log# 1 seq# 2793 mem# 0: /data/oradata/testdata/redo01.log
Fri Nov 30 05:01:52 2007
ARC1: Evaluating archive log 3 thread 1 sequence 2792
ARC1: Beginning to archive log 3 thread 1 sequence 2792
Creating archive destination LOG_ARCHIVE_DEST_1: '/data/oradata/testdata/archive/1_2792.dbf'
Fri Nov 30 05:02:03 2007
ARC1: Completed archiving log 3 thread 1 sequence 2792
Fri Nov 30 10:58:25 2007
Errors in file /opt/ora9/admin/testdata/udump/testdata_ora_18283.trc:
ORA-07445: exception encountered: core dump [prscoldrp()+21] [SIGSEGV] [Address not mapped to object] [0x70] [] []

看看10g下是否已经解决了这个问题:

SQL> SELECT * FROM V$VERSION;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for Solaris: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production

SQL> CREATE TABLE T_SET SET SELECT * FROM V$VERSION;
CREATE TABLE T_SET SET SELECT * FROM V$VERSION
*
1 行出现错误:
ORA-02000:
缺失 UNUSED 关键字

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-69522/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10425885