Thread

  1. Re: BUG #19064: Trigger allows creation with invalid column references but fails at runtime

    Rahila Syed <rahilasyed90@gmail.com> — 2025-09-26T12:59:45Z

    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