From: | Hannu Krosing <hannuk(at)google(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Nathan Bossart <nathandbossart(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Horribly slow pg_upgrade performance with many Large Objects |
Date: | 2025-04-08 16:52:45 |
Message-ID: | CAMT0RQRJQW_9UVXqRFj7xCAQU9eY2ncWanbT3MckKJ=sTFerWQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Apr 8, 2025 at 6:37 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> Hannu Krosing <hannuk(at)google(dot)com> writes:
> > I think we do preserve role oids
>
> Oh ... I'd been looking for mentions of "role" in
> pg_upgrade_support.c, but what I should have looked for was
> "pg_authid". So yeah, we do preserve role OIDs, and maybe that's
> enough to make this workable, at least with source versions that
> share the same rules for what goes into pg_largeobject_metadata and
> pg_shdepend. It's not something I'd risk back-patching though.
The risk is why I suggest to have this in backports as something last
resort which is gated on an environment variable
I have been forced to do this half-manually a few times to make
pg_upgrade feasible at all.
Current really UGH workaround is to use pg_repack support for swapping
relfilenodes of pg_largeobject_metadata with a user table before and
after the upgrade and then manually patching up leftovers like
pg_shdepend after pg_upgrade.
These have fortunately been cases where there were no other
dependencies like comments or security labels on LOs, but these to
should be doable;
> regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Wolfgang Walther | 2025-04-08 16:57:18 | Re: [PoC] Federated Authn/z with OAUTHBEARER |
Previous Message | Jacob Champion | 2025-04-08 16:50:26 | Re: [PoC] Federated Authn/z with OAUTHBEARER |