Re: BUG #17220: ALTER INDEX ALTER COLUMN SET (..) with an optionless opclass makes index and table unusable
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: "Bossart, Nathan" <bossartn@amazon.com>
Cc: Vik Fearing <vik@postgresfriends.org>, "postgresql@zr40.nl" <postgresql@zr40.nl>, Alexander Korotkov <aekorotkov@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2021-10-13T03:42:00Z
Lists: pgsql-bugs, 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 →
-
Block ALTER INDEX/TABLE index_name ALTER COLUMN colname SET (options)
- 85dc4292a7a1 13.5 landed
- b1b797ec71a1 14.1 landed
- fdd88571454e 15.0 landed
On Wed, Oct 13, 2021 at 12:06:32AM +0000, Bossart, Nathan wrote: > At first glance, it looks like ALTER INDEX .. ALTER COLUMN ... SET > uses the wrong validation function. I've attached a patch where I've > attempted to fix that and added some tests. The gap is larger than than, because ALTER INDEX .. ALTER COLUMN .. SET is supported by the parser but we don't document it. The only thing we document now is SET STATISTICS that applies to a column *number*. Anyway, specifying a column name for an ALTER INDEX is not right, no? Just take for example the case of an expression which has a hardcoded column name in pg_attribute. So these are not specific to indexes, which is why we apply column numbers for the statistics case. I think that we'd better just reject those cases until there is a proper design done here. As far as I can see, I guess that we should do things similarly to what we do for SET STATISTICS with column numbers when it comes to indexes. -- Michael