pgsql: Fix failure of ALTER FOREIGN TABLE SET SCHEMA to move sequences.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix failure of ALTER FOREIGN TABLE SET SCHEMA to move sequences.
Date: 2024-03-26 19:28:53
Message-ID: E1rpCTd-005oob-IS@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix failure of ALTER FOREIGN TABLE SET SCHEMA to move sequences.

Ordinary ALTER TABLE SET SCHEMA will also move any owned sequences
into the new schema. We failed to do likewise for foreign tables,
because AlterTableNamespaceInternal believed that only certain
relkinds could have indexes, owned sequences, or constraints.
We could simply add foreign tables to that relkind list, but it
seems likely that the same oversight could be made again in
future. Instead let's remove the relkind filter altogether.
These functions shouldn't cost much when there are no objects
that they need to process, and surely this isn't an especially
performance-critical case anyway.

Per bug #18407 from Vidushi Gupta. Back-patch to all supported
branches.

Discussion: https://postgr.es/m/18407-4fd07373d252c6a0@postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/fad3b5b5acb154725b0265010642ee95fa37c5d7

Modified Files
--------------
src/backend/commands/tablecmds.c | 15 +++++----------
src/test/regress/expected/foreign_data.out | 29 +++++++++++++++++------------
src/test/regress/sql/foreign_data.sql | 2 ++
3 files changed, 24 insertions(+), 22 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2024-03-26 19:28:54 pgsql: Fix failure of ALTER FOREIGN TABLE SET SCHEMA to move sequences.
Previous Message Nathan Bossart 2024-03-26 19:06:26 pgsql: Micro-optimize pg_lfind32().