Re: Major Version Upgrade failure due to orphan roles entries in catalog

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Virender Singla <virender(dot)cse(at)gmail(dot)com>, pgsql-bugs(at)lists(dot)postgresql(dot)org, Aniket Jha <aniketkumarj(at)gmail(dot)com>
Subject: Re: Major Version Upgrade failure due to orphan roles entries in catalog
Date: 2025-02-21 16:23:24
Message-ID: 58e47d097ed2a1512f47891293a7102d573fc970.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Fri, 2025-02-21 at 09:41 -0500, Tom Lane wrote:
> Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> writes:
> > I have one question about the first patch:
>
> > > - if (addroleto || adminmembers || rolemembers)
> > > + if (addroleto || adminmembers || rolemembers || !superuser())
> > > CommandCounterIncrement();
>
> > That change seems unrelated to the problem at hand, and I don't see it
> > mentioned in the commit message. Is that an oversight you fixed on the
> > fly?
>
> Well, kinda, because the patch doesn't work without it. The
> problematic case is where none of those 3 flags are set and also
> !superuser, so that we decide we need the default grant implemented a
> few lines further down. That grant now has an explicit reference to
> the new roleid, and if we haven't CommandCounterIncrement'ed, the
> pg_shdepend code will error out because it doesn't see the catalog
> entry for roleid.

Thanks for the explanation. That might be worth a comment.

Yours,
Laurenz Albe

--

*E-Mail Disclaimer*
Der Inhalt dieser E-Mail ist ausschliesslich fuer den
bezeichneten Adressaten bestimmt. Wenn Sie nicht der vorgesehene Adressat
dieser E-Mail oder dessen Vertreter sein sollten, so beachten Sie bitte,
dass jede Form der Kenntnisnahme, Veroeffentlichung, Vervielfaeltigung oder
Weitergabe des Inhalts dieser E-Mail unzulaessig ist. Wir bitten Sie, sich
in diesem Fall mit dem Absender der E-Mail in Verbindung zu setzen.

*CONFIDENTIALITY NOTICE & DISCLAIMER
*This message and any attachment are
confidential and may be privileged or otherwise protected from disclosure
and solely for the use of the person(s) or entity to whom it is intended.
If you have received this message in error and are not the intended
recipient, please notify the sender immediately and delete this message and
any attachment from your system. If you are not the intended recipient, be
advised that any use of this message is prohibited and may be unlawful, and
you must not copy this message or attachment or disclose the contents to
any other person.

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2025-02-21 16:31:09 Re: Major Version Upgrade failure due to orphan roles entries in catalog
Previous Message Ronald Cruz 2025-02-21 16:13:17 Query result differences between PostgreSQL 17 vs 16