Re: pg_upgrade: transfer pg_largeobject_metadata's files when possible
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>, Tom Lane <tgl@sss.pgh.pa.us>, Nitin Motiani <nitinmotiani@google.com>, Hannu Krosing <hannuk@google.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-02-12T21:59:24Z
Lists: pgsql-hackers
On Thu, Feb 12, 2026 at 04:46:30PM -0500, Andres Freund wrote: > On 2026-02-11 15:00:51 -0600, Nathan Bossart wrote: >> This was a little more painful than I expected, but this seems to be what >> is required to allow COPY-ing pg_largeobject_metadata during binary >> upgrades from < v12. > > Nice! Thanks for looking. > Not really the fault of this patch, but it seems somewhat grotty that this has > binary upgrade specific code in this place. I was certainly confused when > first trying to use pg_dump in binary upgrade mode with large objects, because > no data was dumped when using plain text mode, which is what I had been using > for simplicity... Yeah, this has been an annoyance while hacking in this area. I haven't looked into what it'd take to fix it, though. > I guess you could instead generate a COPY using WITH OIDS. But it's probably > not worth having that path, given we already need to support COPY (SELECT ..). Ah, I forgot all about that COPY option... > as we'd just include the oid column without needing to somehow include it in > the attribute list. > > [...] > > I guess WITH OIDs also would avoid the need for this. Will give it a try. -- nathan
Commits
-
pg_upgrade: Use COPY for LO metadata for upgrades from < v12.
- b33f75361284 19 (unreleased) landed
-
pg_upgrade: Fix handling of pg_largeobject_metadata.
- 158408fef8b9 19 (unreleased) landed
-
pg_upgrade: Transfer pg_largeobject_metadata's files when possible.
- 3bcfcd815e1a 19 (unreleased) landed
-
Rearrange pg_dump's handling of large objects for better efficiency.
- a45c78e3284b 17.0 cited
-
Expand AclMode to 64 bits
- 7b378237aa80 16.0 cited
-
Fix pg_upgrade for oid removal.
- 12a53c732ced 12.0 cited