Re: Unexpected behavior when combining `generated always` columns and update rules - Mailing list pgsql-general

From David G. Johnston
Subject Re: Unexpected behavior when combining `generated always` columns and update rules
Date
Msg-id CAKFQuwakXc0RRNU49n1FYmXXDBukvTeDRbXZZ+Fuyy2y-Z5N=g@mail.gmail.com
Whole thread Raw
In response to Unexpected behavior when combining `generated always` columns and update rules  (Ciprian Craciun <ciprian.craciun@gmail.com>)
Responses Re: Unexpected behavior when combining `generated always` columns and update rules
Re: Unexpected behavior when combining `generated always` columns and update rules
List pgsql-general
On Thursday, April 13, 2023, Ciprian Craciun <ciprian.craciun@gmail.com> wrote:

create or replace rule propagate_x_and_d as on update to x do also
    update y set x = new.x, d = new.d where y.x = old.x;

As seen above, although the rule correctly propagates the change to
the `x` column, it fails to use the new value for the `d` column, but
instead uses the previous one.

ALSO rules behave like before triggers, not after triggers. The original command is appended to the end of the list of commands, not the start.

David J.

pgsql-general by date:

Previous
From: Ciprian Craciun
Date:
Subject: Unexpected behavior when combining `generated always` columns and update rules
Next
From: Tom Lane
Date:
Subject: Re: Unexpected behavior when combining `generated always` columns and update rules