pgsql: Add psql \drg command to display role grants. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Add psql \drg command to display role grants.
Date
Msg-id E1qMAJy-000IeG-RS@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Add psql \drg command to display role grants.

With the addition of INHERIT and SET options for role grants,
the historical display of role memberships in \du/\dg is woefully
inadequate.  Besides those options, there are pre-existing
shortcomings that you can't see the ADMIN option nor the grantor.

To fix this, remove the "Member of" column from \du/\dg altogether
(making that output usefully narrower), and invent a new meta-command
"\drg" that is specifically for displaying role memberships.  It
shows one row for each role granted to the selected role(s), with
the grant options and grantor.

We would not normally back-patch such a feature addition post
feature freeze, but in this case the change is mainly driven by
v16 changes in the server, so it seems appropriate to include it
in v16.

Pavel Luzanov, with bikeshedding and review from a lot of people,
but particularly David Johnston

Discussion: https://postgr.es/m/b9be2d0e-a9bc-0a30-492f-a4f68e4f7740@postgrespro.ru

Branch
------
master

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

Modified Files
--------------
doc/src/sgml/ref/psql-ref.sgml     | 22 ++++++++++
src/bin/psql/command.c             |  2 +
src/bin/psql/describe.c            | 87 ++++++++++++++++++++++++++++++++------
src/bin/psql/describe.h            |  3 ++
src/bin/psql/help.c                |  1 +
src/bin/psql/tab-complete.c        |  6 ++-
src/test/regress/expected/psql.out | 46 ++++++++++++++++++--
src/test/regress/sql/psql.sql      | 26 ++++++++++++
8 files changed, 175 insertions(+), 18 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Doc: improve description of IN and row-constructor comparisons.
Next
From: Nathan Bossart
Date:
Subject: pgsql: Support parenthesized syntax for CLUSTER without a table name.