Major Version Upgrade failure due to orphan roles entries in catalog

From: Virender Singla <virender(dot)cse(at)gmail(dot)com>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: Aniket Jha <aniketkumarj(at)gmail(dot)com>
Subject: Major Version Upgrade failure due to orphan roles entries in catalog
Date: 2025-02-11 10:02:42
Message-ID: CAM6Zo8woa62ZFHtMKox6a4jb8qQ=w87R2L0K8347iE-juQL2EA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi,

We have identified an issue causing upgrade failures. The following steps
detail how to reproduce the issue:

*Create an orphan role entry*

/* Postgres version:: PostgreSQL 16.6 */
/* The same can be reproduced in version 17 as well */

create role my_group;
create role dropped_member;
begin;
grant my_group to dropped_member;
OTHER SESSION: drop role dropped_member;
BACK IN ORIGINAL SESSION:
commit;

*Upgrade to Postgres v17*

And the upgrade fails with an error :

*GRANT "my_group" TO "" WITH INHERIT TRUE GRANTED BY "postgres";ERROR:
zero-length delimited identifier at or near """"*

The issue seems to be coming from pg_dumpall for building grants during
pg_upgrade.

https://github.com/postgres/postgres/blob/master/src/bin/pg_dump/pg_dumpall.c#L992

-Virender

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message PG Bug reporting form 2025-02-11 14:15:51 BUG #18803: ERROR: wrong varnullingrels (b) (expected (b 4)) for Var 2/1
Previous Message Robert Sjöblom 2025-02-11 08:30:45 Re: BUG #18802: password field in log