OSDN Git Service

More pg_upgrade relfilenode C comments added.
authorBruce Momjian <bruce@momjian.us>
Sat, 8 Jan 2011 03:57:30 +0000 (22:57 -0500)
committerBruce Momjian <bruce@momjian.us>
Sat, 8 Jan 2011 03:57:30 +0000 (22:57 -0500)
contrib/pg_upgrade/info.c
contrib/pg_upgrade/pg_upgrade.c

index 301f6bb..4360d39 100644 (file)
@@ -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 */
index 9a5ef0f..42da3ea 100644 (file)
@@ -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.