Установите statement_timeout для каждого пользователя в YugabyteDB

#yugabyte-db

Вопрос:

[Вопрос, опубликованный пользователем в сообществе YugabyteDB Slack]

Postgres предлагает способ настройки statement_timeout для каждого пользователя путем изменения роли: https://www.postgresql.org/docs/11/sql-alterrole.html

Существует известный обходной путь для установки statement_timeout для подключения после его установки, но было бы полезно установить это на уровне ролей.

Есть ли что-то доступное и для YugabyteDB ?

Ответ №1:

Это должно быть уже возможно, как в PostgreSQL. Пример:

 yugabyte=# ALTER ROLE yugabyte SET statement_timeout = 5000;
 

А затем откройте другую оболочку и попробуйте сделать:

 yugabyte=# select pg_sleep(5);
ERROR:  canceling statement due to statement timeout
yugabyte=# select pg_sleep(4);
 pg_sleep 
----------
 
(1 row)
 

Протестировано на версии 2.9.0.0