Thread: pgsql: Allow GRANTED BY clause in normal GRANT and REVOKE statements

pgsql: Allow GRANTED BY clause in normal GRANT and REVOKE statements

From
Peter Eisentraut
Date:
Allow GRANTED BY clause in normal GRANT and REVOKE statements

The SQL standard allows a GRANTED BY clause on GRANT and
REVOKE (privilege) statements that can specify CURRENT_USER or
CURRENT_ROLE.  In PostgreSQL, both of these are the default behavior.
Since we already have all the parsing support for this for the
GRANT (role) statement, we might as well add basic support for this
for the privilege variant as well.  This allows us to check off SQL
feature T332.  In the future, perhaps more interesting things could be
done with this, too.

Reviewed-by: Simon Riggs <simon@2ndquadrant.com>
Discussion: https://www.postgresql.org/message-id/flat/f2feac44-b4c5-f38f-3699-2851d6a76dc9@2ndquadrant.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6aaaa76bb47db11cd6f567eafa3d1ee81ca59556

Modified Files
--------------
doc/src/sgml/ref/grant.sgml              | 25 ++++++++++++++++++++++---
doc/src/sgml/ref/revoke.sgml             | 13 +++++++++++++
src/backend/catalog/aclchk.c             | 16 ++++++++++++++++
src/backend/catalog/sql_features.txt     |  2 +-
src/backend/nodes/copyfuncs.c            |  1 +
src/backend/nodes/equalfuncs.c           |  1 +
src/backend/parser/gram.y                | 13 ++++++++-----
src/include/nodes/parsenodes.h           |  1 +
src/test/regress/expected/privileges.out |  6 ++++--
src/test/regress/sql/privileges.sql      |  6 ++++--
10 files changed, 71 insertions(+), 13 deletions(-)