Re: Things I don't like about \du's "Attributes" column

Поиск
Список
Период
Сортировка
От Pavel Luzanov
Тема Re: Things I don't like about \du's "Attributes" column
Дата
Msg-id 5341835b-e7be-44dc-b6e5-400e9e3f3c64@postgrespro.ru
обсуждение исходный текст
Ответ на Re: Things I don't like about \du's "Attributes" column  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: Things I don't like about \du's "Attributes" column
Список pgsql-hackers
On 06.06.2024 17:29, Robert Haas wrote:
I think the first of these special interpretations is unnecessary and
should be removed. It seems pretty clear what 0 means.
Agree.
There is an additional technical argument for removing this replacement.
I don't like explicit cast to text of the "Connection limit" column.
Without 'Not allowed' it is no longer required.
Value -1 can be replaced by NULL with an implicit cast to integer.

Next version with this change attached.

Example output:

\du+ regress_du*                                                List of roles    Role name     | Login | Attributes  |         Valid until          | Connection limit |   Description    
------------------+-------+-------------+------------------------------+------------------+------------------ regress_du_admin | yes   | Superuser  +|                              |                  | some description                  |       | Create DB  +|                              |                  |                   |       | Create role+|                              |                  |                   |       | Inherit    +|                              |                  |                   |       | Replication+|                              |                  |                   |       | Bypass RLS  |                              |                  |  regress_du_role0 | yes   | Inherit     | Tue Jun 04 00:00:00 2024 PDT |                0 |  regress_du_role1 | no    | Create role+| infinity                     |                  |                   |       | Inherit     |                              |                  |  regress_du_role2 | yes   | Inherit    +|                              |               42 |                   |       | Replication+|                              |                  |                   |       | Bypass RLS  |                              |                  | 
(4 rows)

Current version for comparison:
                                          List of roles    Role name     |                         Attributes                         |   Description    
------------------+------------------------------------------------------------+------------------ regress_du_admin | Superuser, Create role, Create DB, Replication, Bypass RLS | some description regress_du_role0 | No connections                                            +|                   | Password valid until 2024-06-04 00:00:00+03                |  regress_du_role1 | Create role, Cannot login                                 +|                   | Password valid until infinity                              |  regress_du_role2 | Replication, Bypass RLS                                   +|                   | 42 connections                                             | 


Data:
CREATE ROLE regress_du_role0 LOGIN PASSWORD '123' VALID UNTIL '2024-06-04' CONNECTION LIMIT 0;
CREATE ROLE regress_du_role1 CREATEROLE CONNECTION LIMIT -1 VALID UNTIL 'infinity';
CREATE ROLE regress_du_role2 LOGIN REPLICATION BYPASSRLS CONNECTION LIMIT 42;
CREATE ROLE regress_du_admin LOGIN SUPERUSER CREATEROLE CREATEDB BYPASSRLS REPLICATION INHERIT;
COMMENT ON ROLE regress_du_admin IS 'some description';

-- 
Pavel Luzanov
Postgres Professional: https://postgrespro.com
Вложения

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Postgresql OOM
Следующее
От: Jelte Fennema-Nio
Дата:
Сообщение: Re: ssl tests fail due to TCP port conflict