pgsql: Proper object locking for GRANT/REVOKE

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Proper object locking for GRANT/REVOKE
Date: 2024-11-15 10:16:33
Message-ID: E1tBtNR-001v1e-Hl@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Proper object locking for GRANT/REVOKE

Refactor objectNamesToOids() to use get_object_address() internally if
possible. Not only does this save a lot of code, it also allows us to
use the object locking provided by get_object_address() for
GRANT/REVOKE. There was previously a code comment that complained
about the lack of locking in objectNamesToOids(), which is now fixed.

The check in ExecGrant_Type_check() is obsolete because
get_object_address_type() already does the same check.

Reviewed-by: Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/bf72b82c-124d-4efa-a484-bb928e9494e4(at)eisentraut(dot)org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d31bbfb6590e586f731345960311861d5eb4c23f

Modified Files
--------------
src/backend/catalog/aclchk.c | 157 +++++----------------
.../isolation/expected/intra-grant-inplace.out | 2 +-
2 files changed, 39 insertions(+), 120 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Álvaro Herrera 2024-11-15 12:10:13 pgsql: Avoid deleting critical WAL segments during pg_rewind
Previous Message Heikki Linnakangas 2024-11-15 08:09:40 pgsql: jit: Stop emitting some unnecessary instructions