From: Bruce Momjian Date: Sat, 8 Jan 2011 03:57:30 +0000 (-0500) Subject: More pg_upgrade relfilenode C comments added. X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=2f657e4d720d08b26234f3b9e40e347f3cc42220;p=users%2Fhanada%2Fpostgres.git More pg_upgrade relfilenode C comments added. --- diff --git a/contrib/pg_upgrade/info.c b/contrib/pg_upgrade/info.c index 301f6bb9b8..4360d39d33 100644 --- a/contrib/pg_upgrade/info.c +++ b/contrib/pg_upgrade/info.c @@ -132,7 +132,13 @@ create_rel_filename_map(const char *old_data, const char *new_data, new_cluster.tablespace_suffix, new_db->db_oid); } + /* + * old_relfilenode might differ from pg_class.oid (and hence + * new_relfilenode) because of CLUSTER, REINDEX, or VACUUM FULL. + */ map->old_relfilenode = old_rel->relfilenode; + + /* new_relfilenode will match old and new pg_class.oid */ map->new_relfilenode = new_rel->relfilenode; /* used only for logging and error reporing, old/new are identical */ diff --git a/contrib/pg_upgrade/pg_upgrade.c b/contrib/pg_upgrade/pg_upgrade.c index 9a5ef0fd20..42da3ea0df 100644 --- a/contrib/pg_upgrade/pg_upgrade.c +++ b/contrib/pg_upgrade/pg_upgrade.c @@ -19,7 +19,9 @@ * in a cluster, but they can diverge due to CLUSTER, REINDEX, or VACUUM * FULL. The new cluster will have matching pg_class.oid and * pg_class.relfilenode values and be based on the old oid value. This can - * cause the old and new pg_class.relfilenode values to differ. + * cause the old and new pg_class.relfilenode values to differ. In summary, + * old and new pg_class.oid and new pg_class.relfilenode will have the + * same value, and old pg_class.relfilenode might differ. * * We control all assignments of pg_type.oid because these oids are stored * in user composite type values.