[Bug #199655] If a trigger contains an if update() clause, data modifications that should fire the trigger that are done after executing alter table add, alter table drop, alter table lock, or alter table modify may cause errors in the column references. Triggers on the altered table that use an if update() clause in the body of the trigger to reference a column may not fire or may fire incorrectly.
Workaround: After the alter table operation has completed, drop and re-create all triggers on the altered table. Doing so causes the if update() clause in the triggers to correctly reference the new columns by their new column offsets, so the trigger code will execute correctly.