ORA-00600: internal error code [kkmupsViewDestFro_4] in oracle 11.2.0.1
ORA-00600: internal error code, arguments: [kkmupsViewDestFro_4], [75216], [76020], [], [], [], [], [], [], [], [], []
oracle 11.2.0.1 on windows
—– Current SQL Statement for this session —
merge into xxx a
using (
select xx from ta,tb
where ta.xx=tb.xx
and ta.xx in(select xx from xx)
) b
on a.xx=b.xx
when matched then
update set a.yyy=xxx;
—– Call Stack Trace —–
calling call entry argument values in hex
location type point (? means dubious value)
——————– ——– ——————– —————————-
ksedst1()+129 CALL??? skdstdst() 0092F3DA2 000000000 000000000
000000000
ksedst()+69 CALL??? ksedst1() 000000002 000000000 006F605E0
000000000
dbkedDefDump()+4536 CALL??? ksedst() 000000287 000000000 000000000
000000000
ksedmp()+43 CALL??? dbkedDefDump() 000000003 000000002 000000000
000468E71
ksfdmp()+87 CALL??? ksedmp() 000000000 000000000 000000000
000000000
dbgexPhaseII()+1819 CALL??? ksfdmp() 000000000 000000000 000000000
000000000
dbgexProcessError() CALL??? dbgexPhaseII() 02DC30570 02DC3D448 000001979
+2563 000000002
dbgeExecuteForError CALL??? dbgexProcessError() 02DC30570 02DC37540 000000001
()+65 000000000
dbgePostErrorKGE()+ CALL??? dbgeExecuteForError 026EFEB70 306395818 000000001
1726 () 000000090
dbkePostKGE_kgsf()+ CALL??? dbgePostErrorKGE() 026EFF130 02E580040
75 41B8A8EC00000258 A754A1F8BFD6
kgeadse()+342 CALL??? dbkePostKGE_kgsf() 000000000 000000000 000000000
000000000
kgerinv_internal()+ CALL??? kgeadse() 000000000 000000000 000000000
76 000000000
kgerinv()+49 CALL??? kgerinv_internal() 02F0E45C8 026EFEB70 02F10DC78
02F10DC78
kgeasnmierr()+64 CALL??? kgerinv() 02F0BC6E4 4020000000000000
02EA53220 003141393
kkmupsViewDestFro() CALL??? kgeasnmierr() 02E573510 001BEEAE4 0000000FF
+245 000000002
kkmupd()+13520 CALL??? kkmupsViewDestFro() 0074EC808 003DE2860 026EFF130
000000000
kkmups()+144 CALL??? kkmupd() 02E573510 2F9A20458 02EA567B0
000000057
opiprsdml()+761 CALL??? kkmups() 000000000 000000000 000000000
000000000
opiprsdmlcb()+17 CALL??? opiprsdml() 026EFEB70 02E5745D8 000000001
000021D28
kkqcttcalo()+1386 CALL??? opiprsdmlcb() 000000000 000000001 02EE92830
02EE913B0
kkqctdrvIT()+880 CALL??? kkqcttcalo() 02E5745D8 000000000 02EE9F890
0093C1644
apadrv()+2936 CALL??? kkqctdrvIT() 000000000 000000000 000000000
000000000
opitca()+2518 CALL??? apadrv() 00432A0C7 27F00001FA0
000000000 000000000
__PGOSF525_kksFullT CALL??? opitca() 02E5DD9C8 2F9A20458 02EA59C60
ypeCheck()+27 026EFD4E0
rpiswu2()+2757 CALL??? __PGOSF525_kksFullT 02EA58758 000004018 026F04630
ypeCheck() 026F04850
…
Search from MOS
Cause
The error is due to Bug:9861859.
The ORA-600 [KKMUPSVIEWDESTFRO_4] happens while running a merge statement with join elimination. Such join elimination can only happen if the fix for bug 7679164 is present and enabled. This fix was included in the 11.2.0.1 base release.
Solution
1. Upgrade to 11.2.0.2 OR apply Patch:9861859
OR
2. “_optimizer_join_elimination_enabled”=false;
OR
3.”_fix_control”=”7679164:OFF”;
OR
4. adding a ROWNUM pseudo column in subquery like this:
merge into xxx a
using (
select xx, rownum rn from ta,tb
where ta.xx=tb.xx
and ta.xx in(select xx from xx)
) b
on a.xx=b.xx
when matched then
update set a.yyy=xxx;
References MOS note<1181833.1>
对不起,这篇文章暂时关闭评论。