Re: ALTER COLUMN ... SET EXPRESSION to alter stored generated column's expression
Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
From: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: Amul Sul <sulamul@gmail.com>,
Vaibhav Dalvi <vaibhav.dalvi@enterprisedb.com>, pgsql-hackers@postgresql.org
Date: 2023-10-06T12:57:36Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
ALTER TABLE command to change generation expression
- 5d06e99a3cfc 17.0 landed
-
Refactor: separate function to find all objects depending on a column
- d4e66a39eb96 17.0 landed
-
Turn AT_PASS_* macros into an enum
- cea89c93a102 17.0 landed
On Fri, Oct 6, 2023 at 6:06 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. > Should we treat it the same fashion as ALTER COLUMN ... TYPE which rewrites the column values? Of course that rewrites the whole table, but logically they are comparable. -- Best Wishes, Ashutosh Bapat