Content-Length: 279250 | pFad | http://github.com/postgrespro/postgres/commit/5e5958428b7c6e91ffddf46bf9aafd920af57a60

98 In pg_upgrade, because toast table names can be mismatched with the heap · postgrespro/postgres@5e59584 · GitHub
Skip to content

Commit 5e59584

Browse files
committed
In pg_upgrade, because toast table names can be mismatched with the heap
oid on 8.4, modify the toast name comparison test to only apply to old 9.0+ servers. (The test was previously 8.4+.) Backpatch to 9.1.X.
1 parent a32dd16 commit 5e59584

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

contrib/pg_upgrade/info.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,15 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db,
5757
old_db->db_name, old_rel->reloid, new_rel->reloid);
5858

5959
/*
60-
* In pre-8.4, TOAST table names change during CLUSTER; in >= 8.4
61-
* TOAST relation names always use heap table oids, hence we cannot
62-
* check relation names when upgrading from pre-8.4.
60+
* TOAST table names initially match the heap pg_class oid.
61+
* In pre-8.4, TOAST table names change during CLUSTER; in pre-9.0,
62+
* TOAST table names change during ALTER TABLE ALTER COLUMN SET TYPE.
63+
* In >= 9.0, TOAST relation names always use heap table oids, hence
64+
* we cannot check relation names when upgrading from pre-9.0.
65+
* Clusters upgraded to 9.0 will get matching TOAST names.
6366
*/
6467
if (strcmp(old_rel->nspname, new_rel->nspname) != 0 ||
65-
((GET_MAJOR_VERSION(old_cluster.major_version) >= 804 ||
68+
((GET_MAJOR_VERSION(old_cluster.major_version) >= 900 ||
6669
strcmp(old_rel->nspname, "pg_toast") != 0) &&
6770
strcmp(old_rel->relname, new_rel->relname) != 0))
6871
pg_log(PG_FATAL, "Mismatch of relation names in database \"%s\": "

0 commit comments

Comments
 (0)








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/postgrespro/postgres/commit/5e5958428b7c6e91ffddf46bf9aafd920af57a60

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy