postgres.git / summary / log / commit / refs
commit 1e007722fa86ff397b0f3d165c89237ab3b05967
Author: Álvaro Herrera <alvherre@kurilemu.de>
Date: Fri Jul 04 19:30:05 2025 +0000
First released in: 13.22, 14.19, 15.14, 16.10, 17.6, 18.0
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/202507041645.afjl5rssvrgu@alvherre.pgsql
src/bin/pg_upgrade/check.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index 5eac4073fc3..bb6d588a2ec 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -1688,12 +1688,13 @@ check_for_not_null_inheritance(ClusterInfo *cluster)
log_opts.basedir,
"not_null_inconsistent_columns.txt");
- query = "SELECT cc.relnamespace::pg_catalog.regnamespace AS nspname, "
- " cc.relname, ac.attname "
+ query = "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";
task = upgrade_task_create();
[parent: 5aba3e637d3d]