On Tue, Apr 08, 2025 at 01:51:22PM -0400, Tom Lane wrote: > Nathan Bossart <nathandboss...@gmail.com> writes: >> On Tue, Apr 08, 2025 at 01:36:58PM -0400, Tom Lane wrote: >>> Hmm ... one annoying thing for this project is that AFAICS pg_upgrade >>> does *not* preserve database OIDs, which is problematic for using >>> COPY to load pg_shdepend rows. > >> I think it does; see commit aa01051. > > Ah --- I thought I remembered something having been done about that, > but I failed to find it because I was looking in pg_upgrade not > pg_dump. Too bad aa01051 didn't update the comment at the top of > pg_upgrade.c.
I'll apply the attached patch to fix the comment shortly. -- nathan
>From 0ca95279bde8f3ce069a749253eba7c04988003e Mon Sep 17 00:00:00 2001 From: Nathan Bossart <nat...@postgresql.org> Date: Wed, 9 Apr 2025 12:12:27 -0500 Subject: [PATCH v1 1/1] Mention that we preserve database OIDs in pg_upgrade.c comment. Oversight in commit aa01051418. Reported-by: Tom Lane <t...@sss.pgh.pa.us> Discussion: https://postgr.es/m/4055696.1744134682%40sss.pgh.pa.us --- src/bin/pg_upgrade/pg_upgrade.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/bin/pg_upgrade/pg_upgrade.c b/src/bin/pg_upgrade/pg_upgrade.c index 72b5a5fde5a..d9db48dba0d 100644 --- a/src/bin/pg_upgrade/pg_upgrade.c +++ b/src/bin/pg_upgrade/pg_upgrade.c @@ -32,6 +32,9 @@ * We control all assignments of pg_authid.oid for historical reasons (the * oids used to be stored in pg_largeobject_metadata, which is now copied via * SQL commands), that might change at some point in the future. + * + * We control all assignments of pg_database.oid because we want the directory + * names to match between the old and new cluster. */ -- 2.39.5 (Apple Git-154)