summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÁlvaro Herrera2025-07-04 19:30:05 +0000
committerÁlvaro Herrera2025-07-04 19:30:05 +0000
commit708469281ea8589b19010942dee8fa623f9d3c8a (patch)
treec8a975c9f6a4ab5c22251769720c72cd4308ed3f
parentb0f0e2221f42ecfd557eada9d4e642ff7afaf850 (diff)
Fix new pg_upgrade query not to rely on regnamespace
That was invented in 9.5, and pg_upgrade claims to support back to 9.0. But we don't need that with a simple query change, tested by Tom Lane. Discussion: https://postgr.es/m/[email protected]
-rw-r--r--src/bin/pg_upgrade/check.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index 224cb6b9631..3fc96ec9005 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -1059,12 +1059,13 @@ check_for_not_null_inheritance(ClusterInfo *cluster)
PGconn *conn = connectToServer(&old_cluster, active_db->db_name);
res = executeQueryOrDie(conn,
- "SELECT cc.relnamespace::pg_catalog.regnamespace AS nspname, "
- " cc.relname, ac.attname "
+ "SELECT nspname, cc.relname, ac.attname "
"FROM pg_catalog.pg_inherits i, pg_catalog.pg_attribute ac, "
- " pg_catalog.pg_attribute ap, pg_catalog.pg_class cc "
+ " pg_catalog.pg_attribute ap, pg_catalog.pg_class cc, "
+ " pg_catalog.pg_namespace nc "
"WHERE cc.oid = ac.attrelid AND i.inhrelid = ac.attrelid "
" AND i.inhparent = ap.attrelid AND ac.attname = ap.attname "
+ " AND cc.relnamespace = nc.oid "
" AND ap.attnum > 0 and ap.attnotnull AND NOT ac.attnotnull");
ntup = PQntuples(res);