Re: Slow GRANT ROLE on PostgreSQL 16 with thousands of ROLEs

From: Ranier Vilela <ranier(dot)vf(at)gmail(dot)com>
To: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Nathan Bossart <nathandbossart(at)gmail(dot)com>, "alexwork033(at)gmail(dot)com" <alexwork033(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>
Subject: Re: Slow GRANT ROLE on PostgreSQL 16 with thousands of ROLEs
Date: 2024-03-27 16:21:23
Message-ID: CAEudQApkjBqrrWriKRzRGOwOENVF0aCqJY8XvbeqtN9X9Nxf0A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

Nathan Bossart <nathandbossart(at)gmail(dot)com> writes:
>Committed with that change. Thanks for the guidance on this one.

I think that left an oversight in a commit d365ae7
<https://github.com/postgres/postgres/commit/d365ae705409f5d9c81da4b668f59c3598feb512>
If the admin_role is a NULL pointer, so, can be dereferenced
in the main loop of the function roles_is_member_of and
worst, IMO, can be destroying aleatory memory?

First, is a better shortcut test to check if admin_role is NOT NULL.
Second, !OidIsValid(*admin_role), It doesn't seem necessary anymore.

Or am I losing something?

best regards,
Ranier Vilela

Attachment Content-Type Size
avoid-dereference-a-null-pointer-acl.patch application/octet-stream 692 bytes

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nathan Bossart 2024-03-27 16:41:04 Re: Slow GRANT ROLE on PostgreSQL 16 with thousands of ROLEs
Previous Message Heikki Linnakangas 2024-03-27 16:18:46 Re: Combine Prune and Freeze records emitted by vacuum