当前位置: 首页 > news >正文

ORA-07445错误修正

今天早上,在客户现场接到一个请求,说日常使用的一个功能无法使用,界面上报错:
处理SQL出错
java.sql.SQLException: 无法从套接字读取更多的数据
把相应的sql语句拿出来看了下,是个insert...select语句,把这个语句放到sqlplus客户端执行报错:
ORA-03113:通信通道的文件结束
ORA-02114:未连接到ORACLE
觉得非常诡异,看这个语句没什么特殊的,虽然写的不怎么样还N长,直觉后台发生了其他情况,语句去看了alert日志,果然:
Fri Feb 25 12:53:11 2011
Errors in file /oracle/admin/CRMII/udump/crmii_ora_11278.trc:
ORA-07445: 出现异常错误: 核心转储 [kkfies()+99] [SIGSEGV] [Address not mapped to object] [0x000000004] [] []
再去检查相关的trace文件,截取如下:
/oracle/admin/CRMII/udump/crmii_ora_11278.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /oracle/ora10g
System name:Linux
Node name:crmdb2
Release:2.6.9-55.ELlargesmp
Version:#1 SMP Fri Apr 20 16:46:56 EDT 2007
Machine:x86_64
Instance name: CRMII
Redo thread mounted by this instance: 1
Oracle process number: 30
Unix process pid: 11278, image: oracleCRMII@crmdb2

*** ACTION NAME:(SQL 窗口 - Insert Into Tkhqkh (I) 2011-02-25 12:53:11.334
*** MODULE NAME:(PL/SQL Developer) 2011-02-25 12:53:11.334
*** SERVICE NAME:(CRMII) 2011-02-25 12:53:11.334
*** SESSION ID:(1569.9051) 2011-02-25 12:53:11.334
Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x4, PC: [0x2179077, kkfies()+99]
*** 2011-02-25 12:53:11.341
ksedmp: internal or fatal error
ORA-07445: 出现异常错误: 核心转储 [kkfies()+99] [SIGSEGV] [Address not mapped to object] [0x000000004] [] []
Current SQL statement for this session:
Insert Into Tkhqkh
(Id, Khq, Tjfs, Tjr, Tjrq, Khh)
Select Func_Nextid('tKHQKH'),
7204,
1,
3123,
。。。
。。。
。。。
----- Call Stack Trace -----
这个ORA-07445才是真正的内鬼,这个错误号和ORA-00600一样,应该是有bug。
于是上google搜索相关信息,都没有找到有效的解决办法,询问dba,告知修改_optimizer_cost_based_transformation为off,这是个隐含参数,检查下这个参数:
SQL> conn /as sysdba
Connected.
SQL> set linesize 132
SQL> column name format a30
SQL> column value format a25
SQL> select
2 x.ksppinm name,
3 y.ksppstvl value,
4 y.ksppstdf isdefault,
5 decode(bitand(y.ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE') ismod,
6 decode(bitand(y.ksppstvf,2),2,'TRUE','FALSE') isadj
7 from
8 sys.x$ksppi x,
9 sys.x$ksppcv y
10 where
11 x.inst_id = userenv('Instance') and
12 y.inst_id = userenv('Instance') and
13 x.indx = y.indx and
14 x.ksppinm like '%_&par%'
15 order by
16 translate(x.ksppinm, ' _', ' ')
17 /
Enter value for par: optimizer_cost_based_transformation
old 14: x.ksppinm like '%_&par%'
new 14: x.ksppinm like '%_optimizer_cost_based_transformation%'

NAME VALUE ISDEFAULT ISMOD ISADJ
------------------------------ ------------------------- --------- ---------- -----
_optimizer_cost_based_transfor LINEAR TRUE FALSE FALSE
mation
接下来修改这个参数:
SQL> alter system set "_optimizer_cost_based_transformation"=off scope=both;

System altered
再执行这个语句,问题得到解决,应用层面也没有问题了。
但是,还是怕怕的,修改隐含参数很少干过,不知道有什么附带症状没有,待观察。
-The End-

相关文章:

  • ajax3
  • 英文名
  • 在 Android 中进程的级别有哪些?
  • UNION ALL导致的ORA-07445错误
  • 计算机网络: IP地址,子网掩码,默认网关,DNS服务器详解
  • 纠结+纠结
  • HTTP 返回状态代码详细解释
  • gcrawler:一个基于gevent的简单爬虫框架
  • Struts2+MySQL登录注册
  • Sql 连接串
  • java类与对象,用程序解释
  • 代码生成器修改备注
  • 常用的字符串方法 String ;
  • 在SQL Server 2008上实现资源的负载均衡
  • 【转】angular基本概念的认识与实战
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • angular2 简述
  • emacs初体验
  • Java 多线程编程之:notify 和 wait 用法
  • Js基础知识(一) - 变量
  • Linux下的乱码问题
  • ReactNativeweexDeviceOne对比
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • Vultr 教程目录
  • 阿里云应用高可用服务公测发布
  • 百度小程序遇到的问题
  • 从零开始在ubuntu上搭建node开发环境
  • 前端面试之CSS3新特性
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • 函数计算新功能-----支持C#函数
  • ​VRRP 虚拟路由冗余协议(华为)
  • # 达梦数据库知识点
  • ###C语言程序设计-----C语言学习(6)#
  • #stm32整理(一)flash读写
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (Forward) Music Player: From UI Proposal to Code
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (二)hibernate配置管理
  • (附源码)springboot教学评价 毕业设计 641310
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (十) 初识 Docker file
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现