Data Dictionary
>
FPSAPP Views
> FPSAPP.WIP_WAFER_HIST_LOOP
View FPSADMIN.ADM_RESEARCH_MUTATING_TRIGGERS
ORA-04091 is one of the most frustrating errors in Oracle. It happens when a row-level trigger attempts to query the table that is currently being modified by the statement that fired that trigger. But frequently we actually want to do this and there are cases where it actually is allowed so the frustrating piece is figuring out when it is acceptable to query the table and when it will result in this error. We figured this out finally with an assist from the article linked below. The latter two cases are when we have to use the DBPI method to loop through the APD view and insert one row at a time when a row level insert BEFORE trigger exists on the table: - Statement level triggers are allowed to query the table. CFG_SCHED_CHK_GDD and RTG_SMP_LINK_STEPS_CHECK are examples of this. - Row level update triggers are never allowed to the query the table. - Row level delete triggers are never allowed to the query the table. - Row level insert AFTER triggers are never allowed to the query the table. - Row level insert BEFORE triggers are allowed to query the table if only one row is inserted. - Row level insert BEFORE triggers are not allowed to query the table if multiple records are inserted. http://www.databasejournal.com/features/oracle/article.php/3329121/The-Mutation-error-in-Oracle-Database-Triggers.htm
|
Column |
Comment |
|---|---|
|
OWNER |
|
|
TRIGGER_NAME |
|
|
TABLE_NAME |
|
|
TRIGGER_TYPE |
|
|
TRIGGERING_EVENT |
|
|
LINE |
|
|
TEXT |