diff --git a/contrib/pg_upgrade/info.c b/contrib/pg_upgrade/info.c
index 301f6bb9b8f2fe0538ef9eb31ed195324e2eb9fb..4360d39d3347d8b2ca99781672e20e017b6c8483 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 9a5ef0fd205f01f7fb684d9f9ec8b36fc64df6e1..42da3ea0df70da29ccbbd0832875ecb80eab329b 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.