From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | "Bossart, Nathan" <bossartn(at)amazon(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Bruce Momjian <bruce(at)momjian(dot)us>, Onder Kalaci <onderk(at)microsoft(dot)com>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: ALTER INDEX .. RENAME allows to rename tables/views as well |
Date: | 2021-10-06 23:44:16 |
Message-ID: | 202110062344.umcztyngqtvu@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2021-Oct-06, Bossart, Nathan wrote:
> On 10/6/21, 3:44 PM, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> > The situation for "ALTER some-other-relation-kind" is a bit more
> > confused, because some cases throw errors and some don't; but I really
> > doubt that tightening things up here will earn you anything but
> > brickbats. I *definitely* don't agree with discarding the policy
> > about ALTER TABLE, especially if it's only done for RENAME.
>
> I think we should at least consider adding this check for ALTER INDEX
> since we choose a different lock level in that case.
I agree -- letting ALTER INDEX process relations that aren't indexes is
dangerous, with its current coding that uses a reduced lock level. But
maybe erroring out is not necessary; can we instead loop, locking the
object with ShareUpdateExclusive first, assuming it *is* an index, and
if it isn't then we release and restart using the stronger lock this
time?
--
Álvaro Herrera 39°49'30"S 73°17'W — https://www.EnterpriseDB.com/
Syntax error: function hell() needs an argument.
Please choose what hell you want to involve.
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2021-10-07 00:26:51 | Re: [Patch] ALTER SYSTEM READ ONLY |
Previous Message | Peter Geoghegan | 2021-10-06 23:12:15 | Re: BUG #17212: pg_amcheck fails on checking temporary relations |