記一次ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Address not ma

qqmengxue發表於2011-10-25

錯誤描述:

oracle 10.2.0.4 64bit

redhat5.6 64bit

在建立函式完成後呼叫直接報錯:

Errors in file /opt/oracle/admin/kebao/udump/kebao_ora_26334.trc:
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Address not mapped to object] [0x000000000] [] []

SESSION會話也直接中斷。

[@more@]

透過定義typetype bodyfunction後透過SQL呼叫新宣告的function函式,會話直接關閉,透過檢視alert檔案發現報以下錯誤:

Errors in file /opt/oracle/admin/kebao/udump/kebao_ora_26334.trc:
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Address not mapped to object] [0x000000000] [] []

opt/oracle/admin/kebao/udump/kebao_ora_26334.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /opt/oracle/product/10.2.0/db_1
System name: Linux
Node name: oracledb
Release: 2.6.18-164.el5
Version: #1 SMP Tue Aug 18 15:51:48 EDT 2009
Machine: x86_64
Instance name: kebao
Redo thread mounted by this instance: 1
Oracle process number: 47
Unix process pid: 26334, image:

*** ACTION NAME:(SQL Window - create table a as s) 2011-10-25 14:06:46.770
*** MODULE NAME:(PL/SQL Developer) 2011-10-25 14:06:46.770
*** SERVICE NAME:(kebao) 2011-10-25 14:06:46.770
*** SESSION ID:(392.48730) 2011-10-25 14:06:46.770
Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x0, PC: [0x2b3283211608, _intel_fast_memcpy.A()+10]
*** 2011-10-25 14:06:46.770
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Address not mapped to object] [0x000000000] [] []
Current SQL statement for this session:
select --COUNT(DISTINCT A.CUS_ID)
a.cus_id,a.cus_name, crm_connstr(C.PMT_ORD_ID) as aaaa
from sle_rtl.customer a, sle_rtl.customer_phone b , sle_rtl_fin.payment c
where a.cus_id = b.cus_id and a.cus_id = c.cus_id and c.pmt_com_id = 'PEK'
group by a.cus_id ,a.cus_name
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedst()+31 call ksedst1() 000000000 ? 000000001 ?
2B3284EF2D50 ? 2B3284EF2DB0 ?
2B3284EF2CF0 ? 000000000 ?
--More--(0%)

..................................

透過檢查發現在type裡面生成的返回值型別是CLOB的,而我的FUNCTION裡面返回的是VARCHAR2的,最終導致錯誤的發生。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10130206/viewspace-1055933/,如需轉載,請註明出處,否則將追究法律責任。

相關文章