DB2 - Problem description
Problem IC62028 | Status: Closed |
AN UNEXPECTED FAILURE MAY OCCUR DURING TRIGGER REVALIDATION. | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
A trigger can be invalidated when an object on which the trigger depends is altered. If the database configuration parameter AUTO_REVAL is set to IMMEDIATE, revalidation occurs during the execution of the invalidating statement. If AUTO_REVAL is set to DEFERRED or DEFERRED_FORCE, revalidation of the trigger will occur when the trigger is next activated. . If trigger revalidation encounters an error during processing, it is possible that the database engine abnormally terminates or demonstrates other unexpected results. . If this problem occurs and a call stack is generated, a memory copy routine will appear in the stack. The functions sqlrlUpdateInvalidObj and sqlnn_regen_trigger may also appear inthe stack. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All DB2 UDB systems on all Linux, Unix, and Windowsplatforms * * at service levels on Version 9.7.0. * **************************************************************** * PROBLEM DESCRIPTION: * * A trigger can be invalidated when an object on which * * thetrigger depends is altered. If the database * * configurationparameter AUTO_REVAL is set to IMMEDIATE, * * revalidationoccurs during the execution of the invalidating * * statement.If AUTO_REVAL is set to DEFERRED or * * DEFERRED_FORCE,revalidation of the trigger will occur when * * the trigger isnext activated..If trigger revalidation * * encounters an error duringprocessing, it is possible that * * the database engineabnormally terminates ordemonstrates * * other unexpectedresults..If this problem occurs and a call * * stack is generated, amemory copy routine will appear in the * * stack. Thefunctions sqlrlUpdateInvalidObj * * andsqlnn_regen_trigger may also appear inthe stack. * **************************************************************** * RECOMMENDATION: * * Upgrade to Fixpack 1 of DB2 Version 9.7 or see "Local * * Fix"section for a workaround. * **************************************************************** | |
Local Fix: | |
Steps: 1) Set the database configuration parameter AUTO_REVAL to DEFERRED or DEFERRED_FORCE. If AUTO_REVAL already has one of these values, proceed to step two. 2) Execute SQL statements that are causing the invalidation of atrigger. If no change was made to the AUTO_REVAL database configuration parameter in step one, there may not be any SQL statements to execute in this step. 3) For all triggers that are in SYSCAT.INVALIDOBJECTS, manually drop and recreate the trigger. 4) Change the database configuration parameter AUTO_REVAL back to its original value, if needed. | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 1 for Linux, UNIX, and Windows | |
Solution | |
The complete fix for this problem first appears in DB2 UDB Version 9.7 Fixpack 1. | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 14.07.2009 16.02.2010 16.02.2010 |
Problem solved at the following versions (IBM BugInfos) | |
9.7., 9.7.FP1 | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.1 |