From: Bruce Momjian Date: Wed, 25 Jan 2012 02:51:10 +0000 (-0500) Subject: Fix new SQL tablespace location function usage in pg_upgrade to properly X-Git-Tag: REL9_2_BETA1~550 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b95aec529014355f4f90c5095993404ff0291b02;p=postgresql Fix new SQL tablespace location function usage in pg_upgrade to properly check cluster version numbers, and fix missing table alias. --- diff --git a/contrib/pg_upgrade/info.c b/contrib/pg_upgrade/info.c index e8361cec29..692cdc2e62 100644 --- a/contrib/pg_upgrade/info.c +++ b/contrib/pg_upgrade/info.c @@ -204,7 +204,7 @@ get_db_infos(ClusterInfo *cluster) /* we don't preserve pg_database.oid so we sort by name */ "ORDER BY 2", /* 9.2 removed the spclocation column */ - (GET_MAJOR_VERSION(old_cluster.major_version) <= 901) ? + (GET_MAJOR_VERSION(cluster->major_version) <= 901) ? "t.spclocation" : "pg_catalog.pg_tablespace_location(t.oid) AS spclocation"); res = executeQueryOrDie(conn, "%s", query); @@ -287,7 +287,7 @@ get_rel_infos(ClusterInfo *cluster, DbInfo *dbinfo) /* we preserve pg_class.oid so we sort by it to match old/new */ "ORDER BY 1;", /* 9.2 removed the spclocation column */ - (GET_MAJOR_VERSION(old_cluster.major_version) <= 901) ? + (GET_MAJOR_VERSION(cluster->major_version) <= 901) ? "t.spclocation" : "pg_catalog.pg_tablespace_location(t.oid) AS spclocation", /* see the comment at the top of old_8_3_create_sequence_script() */ (GET_MAJOR_VERSION(old_cluster.major_version) <= 803) ? diff --git a/contrib/pg_upgrade/tablespace.c b/contrib/pg_upgrade/tablespace.c index 11fd9d091f..6b61f4bac1 100644 --- a/contrib/pg_upgrade/tablespace.c +++ b/contrib/pg_upgrade/tablespace.c @@ -53,7 +53,7 @@ get_tablespace_paths(void) " spcname != 'pg_global'", /* 9.2 removed the spclocation column */ (GET_MAJOR_VERSION(old_cluster.major_version) <= 901) ? - "t.spclocation" : "pg_catalog.pg_tablespace_location(oid) AS spclocation"); + "spclocation" : "pg_catalog.pg_tablespace_location(oid) AS spclocation"); res = executeQueryOrDie(conn, "%s", query);