Re: BUG #19064: Trigger allows creation with invalid column references but fails at runtime
Anthony Sotolongo <asotolongo@gmail.com>
From: Anthony Sotolongo <asotolongo@gmail.com>
To: Rahila Syed <rahilasyed90@gmail.com>
Cc: ketan.bhatiya@lenditt.com, pgsql-bugs@lists.postgresql.org
Date: 2025-09-26T13:35:50Z
Lists: pgsql-bugs
From my point of view, this extension can help detect these types of problems: https://github.com/okbob/plpgsql_check Regards El vie, 26 sept 2025 a las 10:00, Rahila Syed (<rahilasyed90@gmail.com>) escribió: > Hi > > > >> Suggestion / Proposed Improvement >> PostgreSQL should validate column references at trigger creation time, not >> just at runtime. >> If a column does not exist in the target table (Orders in this example), >> trigger creation should fail immediately with a clear error message. >> >> > This behaviour is by design in PostgreSQL. The CreateTrigger() is > responsible > for creating a dependency between trigger and its underlying pl/pgsql > function. > The pl/pgsql function is only parsed when it is executed for the first > time. > > This approach allows for flexibility, such as adding columns to a table > after a trigger > has been created. On the other hand, if a column existing at the time of > trigger creation > is later removed, validating at creation time would not offer much > advantage in these > situations. > > Thank you, > Rahila Syed >