Re: BUG #19483: pg_upgrade fails with orphan records in pg_init_priv catalog table
Laurenz Albe <laurenz.albe@cybertec.at>
From: Laurenz Albe <laurenz.albe@cybertec.at>
To: Hüseyin Demir <huseyin.d3r@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>
Cc: Greg Sabino Mullane <htamfids@gmail.com>, pgsql-bugs@lists.postgresql.org
Date: 2026-06-21T05:47:33Z
Lists: pgsql-bugs
On Sat, 2026-06-20 at 23:53 +0200, I wrote: > I think that we need something like this fix, because a failing > upgrade is a bug. For the same reason I think that the fix > should be backpatched. > > I looked at your patch and found that the query you added doesn't > cover the important case where the grantor is a non-existing role > > I suggest a query like this one: [...] Further testing shows that changing this query isn't enough. There are three more places where pg_dump queries pg_init_privs (in getAggregates, getFuncs and dumpTable). So we'd have to use a similarly ugly query in all these places, which doesn't seem particularly attractive and introduces considerable code duplication. One approach I can think of is to have a macro SAFE_INITPRIVS that contains the ugly subquery and is used in all these places. The other idea is to do some post-processing of the aclitems found, but they are in string form and would need to get parsed again, which doesn't look attractive either. Yours, Laurenz Albe