[工作記錄]ORA-03113/ORA-07445

jacksonkingdom發表於2010-06-25
Trace file /opt/oracle/diag/rdbms/business/BUSINESS4/trace/BUSINESS4_ora_1300.trc
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME = /opt/oracle/product/11gR1/db
System name: Linux
Node name: DC-CLUSTER-04
Release: 2.6.16.60-0.21-smp
Version: #1 SMP Tue May 6 12:41:02 UTC 2008
Machine: x86_64
Instance name: BUSINESS4
Redo thread mounted by this instance: 4
Oracle process number: 55
Unix process pid: 1300, image: oracle@DC-CLUSTER-04

*** 2010-06-25 13:23:48.466
*** SESSION ID:(99.2262) 2010-06-25 13:23:48.466
*** CLIENT ID:() 2010-06-25 13:23:48.466
*** SERVICE NAME:(BUSINESS.DMC) 2010-06-25 13:23:48.466
*** MODULE NAME:(PL/SQL Developer) 2010-06-25 13:23:48.466
*** ACTION NAME:(SQL Window - declare reportDate ) 2010-06-25 13:23:48.466

Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x160] [PC:0xF5A5C9, kkecdn()+6169]
DDE: Problem Key 'ORA 7445 [kkecdn()+6169]' was flood controlled (0x2) (incident: 24456)
ORA-07445: exception encountered [kkecdn()+6169] [SIGSEGV] [ADDR:0x160] [PC:0xF5A5C9] [Address not mapped to object] []
ssexhd: crashing the process...
Shadow_Core_Dump = PARTIAL

可以嘗試的解決方法

ORA-07445 : What can cause this error
Bug in Oracle Code
Change in reference libraries [ If you have recently applied OS patches, it may be wise to relink the binaries ]
Code changes in application that causes invalid/null value conditions where a valid value is expected
Software issues like incorrect Libaries due to invalid environment variables primarily related to PATH and LD_LIBRARY_PATH

安裝OS補丁後,可以重新連結下庫檔案。
如果重新啟動OS並重新連結過庫檔案後,問題依然存在,最好去metalink上查下

目前可以重現該問題的語句
declare
reportDate date:=date '2010-6-25';
begin
update dho_character_timer set state=0 where state=1;
commit;
insert into dho_character_timer
select b.collserver,
a.login_username,
a.char_name,
sum(b.playedtime),
reportDate-1,
1
from (select char_index,
account_index,
login_username,
char_name
from business.dho_game_character
where colltime>=reportDate and colltime join (select t.*,
(t.log_out-t.log_in)*24*60*60 as playedtime
from (select collserver,
account_id,
char_id,
log_action,
log_time log_out,
lag(log_time,1)over(partition by account_id,char_id order by log_time) as log_in
from business.dho_log_loginchar
where log_time>=reportDate-2 and log_time where log_action=4 and log_out>=reportDate-1 and log_in is not null)b
on a.account_index=b.account_id and a.char_index=b.char_id
group by b.collserver,a.login_username,a.char_name;
commit;
end;[@more@]

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

相關文章