This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review. |
Applies to:
Oracle Server - Enterprise Edition - Version: 8.1.5.0 to 11.2.0.2 - Release: 8.1.5 to 11.2Information in this document applies to any platform.
Symptoms
An ORA-600 [16606] error occurs on execution of a database level trigger, such as a logon trigger.
The call stack for the ORA-600 [16606] will resemble:
kglsget kqlsget psdghi ph1pbv ph1gnt ph1ylx ph1lex plsql ph1run ph1drv phpsyn phpcmp pcicms2 pcicmp2 kkxcmp0 rpiswu2 kkxcmp kktcrt opiexe opiosq0 kpooprx kpoal8 opiodr ttcpip opitsk opiino opiodr opidrv sou2o opimai_real main __start
Changes
The trigger has been updated to reference correlation variables :NEW or :OLD.Cause
This is due to incorrect use of PLSQL correlation names (:OLD & :NEW) in a trigger as identified in Bug:8319488, as correlation names are only supported for row level DML triggers.Solution
Correct the application code to remove use of the correlation names :OLD and/or :NEW in anything but row level (i.e. FOR EACH ROW) DML triggers.References
BUG:8319488 - ORA-600 [16606] WITH LOGON TRIGGERNOTE:138525.1 - ORA-600 [16606]