Bruno Wolff III wrote: > I think I know what is happening, but I wanted to see if my understanding > is correct. > > I have a perl after insert trigger for a table with a non-null column element > and I am getting an occasional error when the trigger executes for > printing a null value which is $TD->{new}{element}. However, I do the > insert with an on conflict that converts it into an update. And I have > a before update trigger that blocks changing the record, but returns null > if the old and new records are the same. > > My theory is that the insert trigger is firing even though the action > got changed to an update and that because the update trigger cancelled > the update, there is no new record. So I should just test for $TD->{new} > being doing before doing stuff. > > Does that sound correct? Absolutely, but it should be easy to run a few tests with only a single row insert that confirms your theory. Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com