Re: ALTER COLUMN ... SET EXPRESSION to alter stored generated column's expression - Mailing list pgsql-hackers

From Amul Sul
Subject Re: ALTER COLUMN ... SET EXPRESSION to alter stored generated column's expression
Date
Msg-id CAAJ_b95Mz9w_eTi6MO9R2jOMcMCo-91iLjP9t1iRw7Q_g_V5vw@mail.gmail.com
Whole thread Raw
In response to Re: ALTER COLUMN ... SET EXPRESSION to alter stored generated column's expression  (Peter Eisentraut <peter@eisentraut.org>)
List pgsql-hackers
On Fri, Oct 6, 2023 at 6:03 PM Peter Eisentraut <peter@eisentraut.org> wrote:
On 28.08.23 11:54, Amul Sul wrote:
> Thanks for the review comments, I have fixed those in the attached
> version. In
> addition to that, extended syntax to have the STORE keyword as suggested by
> Vik.

An additional comment: When you change the generation expression, you
need to run ON UPDATE triggers on all rows, if there are any triggers
defined.  That is because someone could have triggers defined on the
column to either check for valid values or propagate values somewhere
else, and if the expression changes, that is kind of like an UPDATE.

Similarly, I think we should consider how logical decoding should handle
this operation.  I'd imagine it should generate UPDATE events on all
rows.  A test case in test_decoding would be useful.

If I am not mistaken, the existing table rewrite facilities for ALTER TABLE
don't have support to run triggers or generate an event for each row, right? 

Do you expect to write a new code to handle this rewriting?

Regards,
Amul

pgsql-hackers by date:

Previous
From: Michał Kłeczek
Date:
Subject: Re: Draft LIMIT pushdown to Append and MergeAppend patch
Next
From: Alexander Lakhin
Date:
Subject: Re: A failure in 031_recovery_conflict.pl on Debian/s390x