Re: psql: Add role's membership options to the \du+ command

Поиск
Список
Период
Сортировка
От Pavel Luzanov
Тема Re: psql: Add role's membership options to the \du+ command
Дата
Msg-id 39e7431c-1224-ab05-c67c-68f4cf625442@postgrespro.ru
обсуждение исходный текст
Ответ на Re: psql: Add role's membership options to the \du+ command  ("David G. Johnston" <david.g.johnston@gmail.com>)
Ответы Re: psql: Add role's membership options to the \du+ command  ("Jonathan S. Katz" <jkatz@postgresql.org>)
Список pgsql-hackers
On 05.05.2023 19:51, David G. Johnston wrote:
But if it is really a blocker then maybe we should produce 3 separate newline separated columns, one for the member of role, one for the list of attributes, and one with the grantor.  The column headers can be translated more easily as single nouns.  The readability quite probably would end up being equivalent (maybe even better) in tabular form instead of sentence form.

Just to visualize this approach.
Below are the output for the tabular form and the sentence form from last patch version
(sql script attached):
Tabular form
     rolname      |     memberof     |       options       |     grantor      
------------------+------------------+---------------------+------------------
 postgres         |                  |                     | 
 regress_du_admin | regress_du_role0+| admin, inherit, set+| postgres        +
                  | regress_du_role1+| admin, inherit, set+| postgres        +
                  | regress_du_role2 | admin, inherit, set | postgres
 regress_du_role0 |                  |                     | 
 regress_du_role1 | regress_du_role0+| admin, inherit, set+| regress_du_admin+
                  | regress_du_role0+| inherit            +| regress_du_role1+
                  | regress_du_role0 | set                 | regress_du_role2
 regress_du_role2 | regress_du_role0+| admin              +| regress_du_admin+
                  | regress_du_role0+| inherit, set       +| regress_du_role1+
                  | regress_du_role0+| empty              +| regress_du_role2+
                  | regress_du_role1 | admin, set          | regress_du_admin
(5 rows)

Sentence form from patch v7
     rolname      |                           memberof                           
------------------+--------------------------------------------------------------
 postgres         | 
 regress_du_admin | regress_du_role0 from postgres (admin, inherit, set)        +
                  | regress_du_role1 from postgres (admin, inherit, set)        +
                  | regress_du_role2 from postgres (admin, inherit, set)
 regress_du_role0 | 
 regress_du_role1 | regress_du_role0 from regress_du_admin (admin, inherit, set)+
                  | regress_du_role0 from regress_du_role1 (inherit)            +
                  | regress_du_role0 from regress_du_role2 (set)
 regress_du_role2 | regress_du_role0 from regress_du_admin (admin)              +
                  | regress_du_role0 from regress_du_role1 (inherit, set)       +
                  | regress_du_role0 from regress_du_role2 (empty)              +
                  | regress_du_role1 from regress_du_admin (admin, set)
(5 rows)
 
The tabular form solves the latest patch translation problems mentioned by Kyotaro.
But it requires mapping elements between 3 array-like columns.

To move forward, needs more opinions?
 
-----
Pavel Luzanov
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: MERGE lacks ruleutils.c decompiling support!?
Следующее
От: Michael Paquier
Дата:
Сообщение: Re: Add LZ4 compression in pg_dump