Subject Re: [IBO] AfterUpdate and BeforeUpdate triggers executed twice
Author Nando Dessena

> I must use PessimisticLocking, so I can't drop this option. How can I tell
> in a trigger if it's a dummy or a real update?

A dummy update does not change the value of any column.
Your triggers probably should do something in reaction to a data change,
so you should be able to put the code into conditional tests (if
(old.column <> new.column) then...).
If this is not always the case, and you need to track all updates even
if they don't change any column value, I fear you'll have to add a
column whose sole purpose will be to help the triggers in distinguishing
a dummy update from a real one.
I guess pessimistic locking with IB means compromises.