diff options
author | Michael Paquier <michael@paquier.xyz> | 2022-12-23 11:27:11 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2022-12-23 11:27:11 +0900 |
commit | 9c48a0f00011c45d9a7b8903ffbecd286cf46de0 (patch) | |
tree | 2dfa6a4a72d6aedace0757055fcd89d9bcfa8342 | |
parent | e3897a3a4c559e20ba2c4f311be6ace8006f9005 (diff) | |
download | postgresql-9c48a0f00011c45d9a7b8903ffbecd286cf46de0.tar.gz postgresql-9c48a0f00011c45d9a7b8903ffbecd286cf46de0.zip |
Fix some incorrectness in upgrade_adapt.sql on query for WITH OIDS
The query used to disable WITH OIDS in all the relations making use of
it was checking for materialized views, but this is not a supported
operation. On the contrary, this needs to be done on foreign tables.
While on it, use quote_ident() in the ALTER TABLE strings built on the
relation name.
Author: Anton A. Melnikov, Michael Paquier
Discussion: https://postgr.es/m/49f389ba-95ce-8a9b-09ae-f60650c0e7c7@inbox.ru
Backpatch-through: 12
-rw-r--r-- | src/bin/pg_upgrade/upgrade_adapt.sql | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/bin/pg_upgrade/upgrade_adapt.sql b/src/bin/pg_upgrade/upgrade_adapt.sql index 27c4c7fd011..d0580e42823 100644 --- a/src/bin/pg_upgrade/upgrade_adapt.sql +++ b/src/bin/pg_upgrade/upgrade_adapt.sql @@ -72,10 +72,10 @@ DO $stmt$ FROM pg_class WHERE relname !~ '^pg_' AND relhasoids - AND relkind in ('r','m') + AND relkind in ('r', 'f') ORDER BY 1 LOOP - execute 'ALTER TABLE ' || rec || ' SET WITHOUT OIDS'; + EXECUTE 'ALTER TABLE ' || quote_ident(rec) || ' SET WITHOUT OIDS'; END LOOP; END; $stmt$; \endif |