Thread: pgsql: Proper object locking for GRANT/REVOKE

pgsql: Proper object locking for GRANT/REVOKE

From
Peter Eisentraut
Date:
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.pg@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/bf72b82c-124d-4efa-a484-bb928e9494e4@eisentraut.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(-)