Subject Re: [firebird-support] When do triggers take effect?
Author Helen Borrie
Tim Ward wrote:

>> Using Database Workbench I added a trigger to a table, but it didn't
>> seen to do anything (in particular didn't throw an exception which it
>> should have done when I deliberately created an invalid record).

>> After restarting DBWB the trigger behaved as expected.

>> Do triggers not take effect on existing connections, or something?

Tuesday, June 7, 2016, 8:03:42 AM, I replied to Tim:

> A new or altered trigger won't take effect until the cache is cleared.
> With Classic, this means the next new connection as each has its own
> private cache. With SS, shared cache, so the cache isn't cleared
> until all users are logged off.

Ann H. pointed this out to me:

"Changes were made in January ( http://tracker.firebirdsql.org/browse/CORE-3024)
made metadata changes visible immediately on all architectures."

So it looks as though Superserver behaviour depends on the version you
are using. The effects of that improvement should surface in Fb3 and
in V.2.5.6 snapshots. Although it was backported to 2.5, the commit
apparently didn't make it into the v.2.5.5 release builds last
November. If you are using 2.5.5 or below currently, you might like
to test the latest 2.5.6 snapshot. I know I'm not going to have time
myself to do it this week.

Helen