首页 » Cloud, ORACLE 9i-23ai » Troubleshooting 19c ora-600 internal error code [kkshhcdel:wrong-bucket]
Troubleshooting 19c ora-600 internal error code [kkshhcdel:wrong-bucket]
Oracle 19c(19.9) RAC on linux, 应用执行一个update sql时报错ora-600, 错误日志如下
ORA-00600: internal error code, arguments: [kkshhcdel:wrong-bucket], [0x58445A790], [0x000000000], [0x67DFB5820], [], [], [], [], [], [], [], [] ----- Current SQL Statement for this session (sql_id=1jkhptdvurr4q) ----- update XXX_LOG set sendstatus=:1 ,ERROR_INFO=:2 ,process_time=sysdate where rowid = chartorowid(:3 ) [TOC00003-END] [TOC00004] ----- Call Stack Trace ----- calling call entry argument values in hex location type point (? means dubious value) -------------------- -------- -------------------- ---------------------------- ... dbgePostErrorKGE()+ call dbgexProcessError() 7FFFF7F436D0 7FFFF7F488A0 1853 000000001 000000000 000000000 ? 000000082 ? dbkePostKGE_kgsf()+ call dbgePostErrorKGE() 7FFFF7F839A0 7FFFF7E0AA88 71 000000258 000000000 ? 000000000 ? 000000082 ? kgeadse()+447 call dbkePostKGE_kgsf() 7FFFF7F839A0 7FFFF7E0AA88 000000258 000000000 ? 000000000 ? 000000082 ? kgerinv_internal()+ call kgeadse() 7FFFF7F839A0 ? 7FFFF7E0AA88 44 000000258 ? 013D772D0 000000000 000000003 kgerinv()+40 call kgerinv_internal() 7FFFF7F839A0 ? 7FFFF7E0AA88 ? 000000258 ? 013D772D0 ? 000000000 ? 000000003 ? kgeasnmierr()+146 call kgerinv() 7FFFF7F839A0 ? 7FFFF7E0AA88 ? 000000258 ? 013D772D0 ? 000000000 ? 000000003 ? kkshhcdel()+1375 call kgeasnmierr() 7FFFF7F839A0 ? 7FFFF7E0AA88 ? 000000258 ? 013D772D0 ? 000000002 58445A790 kksfbc()+17471 call kkshhcdel() 7FFFF7F839A0 ? 7FFFF7E0AA88 ? 58445A7E0 ? 67DFB5800 ? 000000002 ? 58445A790 ? opiexe()+2895 call kksfbc() 7FFFF268C4A8 7FFFF7E0AA88 ? 58445A7E0 ? 67DFB5800 ? 000000002 ? 58445A790 ? kpoal8()+2387 call opiexe() 000000049 7FFFF7E0AA88 ? 7FFFFFFF7FE0 67DFB5800 ? 000000002 ? 58445A790 ? opiodr()+1202 call kpoal8() 00000005E 000000026 7FFFFFFFBA40 67DFB5800 ? 000000002 ? 58445A790 ?
kkshhcdel – kernel compile shared objects (cursor) cursor hash table hash chain child delete
kksfbc – kernel compile shared objects (cursor) find bound cursor
An Ora-600 [kkshindel:wrong-bucket] might have been seen if we have concurrent access to the same cursor across multiple sessions. This has
now be addressed.
应该是在SQL解析阶段,多个session一致性访问相同的sql cursor时, 获取了hash chain后,遍历hash table时,查找hash bucket时出错。还是发生在shared pool内存中, 判断问题是SQL级,影响该SQL, 建议尝试flush shared pool。
目前oracle中未发现完全匹配bug,但和Bug 31213034 相似. 本案例在flush shared pool恢复正常。
BTW, 19c RU选择时,建议19.11以上,相对问题少一些。
对不起,这篇文章暂时关闭评论。