ORA-07445: exception encountered: core dump [kkoipt()+3881] [SIGSEGV] [Address not mapped to object] [0x000000028] [] []
[root@ora udump]# more orclsid_ora_13842.trc
/data/oracle/admin/orclsid/udump/orclsid_ora_13842.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /data/oracle/product/10.2.0.1
System name: Linux
Node name: ora.orclsid.com.cn
Release: 2.6.18-194.32.1.el5
Version: #1 SMP Wed Jan 5 17:52:25 EST 2011
Machine: x86_64
Instance name: orclsid
Redo thread mounted by this instance: 1
Oracle process number: 28
Unix process pid: 13842, image: oracle@ora.orclsid.com.cn
*** 2011-02-15 14:40:28.387
*** ACTION NAME:() 2011-02-15 14:40:28.386
*** MODULE NAME:(JDBC Thin Client) 2011-02-15 14:40:28.386
*** SERVICE NAME:(SYS$USERS) 2011-02-15 14:40:28.386
*** SESSION ID:(537.2724) 2011-02-15 14:40:28.386
Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x
28, PC: [0x3028817, kkoipt()+3881]
*** 2011-02-15 14:40:28.394
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [kkoipt()+3881] [SIGSEGV] [Address n
ot mapped to object] [0x000000028] [] []
Current SQL statement for this session:
SELECT * FROM (SELECT ROWNUM PAGE_RN, PAGE_A.* FROM( SELECT
MB.tab1_AUTOID ,MC.VA
LUE ,MB.tab1_TIMESTAMP
,MB.tab1_SUBJECT ,MB.tab1_URL
,MB.tab1_URL_ENABLED
,SUM(1) OVER() TOTALCOUNT FROM
ora_tab1 MB ,(
SELECT SUBCLASS, VALUE FROM ora_tab WHERE MAINCLASS = 'MENU' ) M
C WHERE MB.tab1_
ENABLED = 1 AND MC.SUBCLASS (+)= MB.tab1_CLASS
ORDER BY MB.tab1_AUTOID DESC ) PAGE_A WHERE ROWNUM <=
20) PAGE_B WHERE PAGE_B.PAGE_RN>0
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ssd_unwind_bp: unhandled instruction at 0x2fb3962 instr=f
ksedst()+31 call ksedst1() 000000000 ? 000000001 ?
2AFAF78DFD50 ? 2AFAF78DFDB0 ?
2AFAF78DFCF0 ? 000000000 ?
[root@ora udump]# more /data/oracle/admin/orclsid/udump/orclsid_ora_15483.trc
/data/oracle/admin/orclsid/udump/orclsid_ora_15483.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /data/oracle/product/10.2.0.1
System name: Linux
Node name: ora.orclsid.com.cn
Release: 2.6.18-194.32.1.el5
Version: #1 SMP Wed Jan 5 17:52:25 EST 2011
Machine: x86_64
Instance name: orclsid
Redo thread mounted by this instance: 1
Oracle process number: 19
Unix process pid: 15483, image: oracle@ora.orclsid.com.cn (TNS V1-V3)
*** 2011-02-15 14:46:02.648
*** ACTION NAME:() 2011-02-15 14:46:02.647
*** MODULE NAME:(SQL*Plus) 2011-02-15 14:46:02.647
*** SERVICE NAME:(SYS$USERS) 2011-02-15 14:46:02.647
*** SESSION ID:(517.2366) 2011-02-15 14:46:02.647
Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x28, PC: [0x3028817, kkoipt()+3881]
*** 2011-02-15 14:46:02.655
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [kkoipt()+3881] [SIGSEGV] [Address not mapped to object] [0x000000028] [] []
Current SQL statement for this session:
SELECT *
FROM (SELECT ROWNUM PAGE_RN, PAGE_A.*
FROM (SELECT MB.tab1_AUTOID,
MC.VALUE,
MB.tab1_TIMESTAMP,
MB.tab1_SUBJECT,
MB.tab1_URL,
MB.tab1_URL_ENABLED,
SUM(1) OVER() TOTALCOUNT
FROM ora_tab1 MB,
(SELECT SUBCLASS, VALUE
FROM ora_tab
WHERE MAINCLASS = 'MENU') MC
WHERE MB.tab1_ENABLED = 1
AND MC.SUBCLASS(+) = MB.tab1_CLASS
ORDER BY MB.tab1_AUTOID DESC) PAGE_A
WHERE ROWNUM <= 20) PAGE_B
WHERE pAGE_B.PAGE_RN > 0
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ssd_unwind_bp: unhandled instruction at 0x2fb3962 instr=f
ksedst()+31 call ksedst1() 000000000 ? 000000001 ?
2B9F9FAC6D50 ? 2B9F9FAC6DB0 ?
2B9F9FAC6CF0 ? 000000000 ?
ksedmp()+610 call ksedst() 000000000 ? 000000001 ?
2B9F9FAC6D50 ? 2B9F9FAC6DB0 ?
2B9F9FAC6CF0 ? 000000000 ?
ssexhd()+629 call ksedmp() 000000003 ? 000000001 ?
2B9F9FAC6D50 ? 2B9F9FAC6DB0 ?
2B9F9FAC6CF0 ? 000000000 ?
__restore_rt()+0 call ssexhd() 00000000B ? 2B9F9FAC7D70 ?
2B9F9FAC7C40 ? 2B9F9FAC6DB0 ?
2B9F9FAC6CF0 ? 000000000 ?
kkoipt()+3881 signal __restore_rt() 000000000 ? 000000000 ?
000000232 ? 000000000 ?
2B9F9FD0CFE8 ? 2B9F9FD87F38 ?
kkoqbc()+3552 call kkoipt() 2B9F9FDACA98 ? 000000000 ?
000000002 ? 000000000 ?
7FFF00000001 ? 2B9F9FD80000 ?
apakkoqb()+167 call kkoqbc() 000000000 ? 2B9F9FD0DE28 ?
000000002 ? 000000000 ?
000000001 ? 000000001 ?
apaqbdDescendents() call apakkoqb() 7FFF0C4D8350 ? 2B9F9FD0DE28 ?
+414 1F2621D20 ? 000000000 ?
000000001 ? 000000001 ?
apaqbdListReverse() call apaqbdDescendents() 7FFF0C4D8350 ? 2B9F9FD0DE28 ?
+68 1F2621D20 ? 000000000 ?
000000001 ? 000000001 ?
apaqbdDescendents() call apaqbdListReverse() 7FFF0C4D8350 ? 2B9F9FD0DE28 ?
+226 1F2621D20 ? 000000000 ?
000000001 ? 000000001 ?
apaqbdListReverse() call apaqbdDescendents() 7FFF0C4D8350 ? 2B9F9FD0F2D0 ?
+68 1F2621D20 ? 000000000 ?
000000001 ? 000000001 ?
-----------------
oracle 官方给了个不一定能解决问题的方法
修改隐含参数
默认值是true,改成false,无效
alter system set "_complex_view_merging"=true;
之后分析sql,分段执行,当去掉ROWNUM <= 20时语句正常
rownum<=6,5,4,3,2,1都可以,再更大报错
检查表ora_tab1
发现多个字段重复创建联合索引
由于表数据量较小,将索引全部删除后系统恢复正常
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/13177610/viewspace-687265/ ,如需转载,请注明出处,否则将追究法律责任。