его проверили statement_timeout, показывает 0, хотя в postgresql.conf стоит 14400000. Завершился за ночь vacuumfull, с утра проверили statement_timeout = 14400000. Я понимаю, что это скорее всего postgresql.auto.conf, но разве vacuumfull может сам вносить изменения в postgresql.auto.conf?
версия postgresql 10
привет. Ищите сессионные настройки (SET statement_timeout = ... ), скорее всего в них дело.
Вадим, подскажите где их искать? сессии на самом сервере или при подключении к БД? мы запускали vacuum через psql
select name, setting, source, sourcefile, sourceline from pg_settings;
Из под вашей сессии значение может быть установлено на уровне пользователя/сессии и вы видите то, что было установлено после подключения, вне зависимости от того, что установлено в конфиге. Некоторые клиенты могут сами прибивать нужные им значения параметров на сессию. Т.е. если вы видите 0 а в конфиге у вас что-то другое, то скорее всего это было сделано на сессию (или даже на пользователя/бд и т д) У коллег из DataEgret есть полезный запрос https://github.com/dataegret/pg-utils/blob/master/sql/check_config.sql Если увидите (c) рядом с параметром, значит значение устанавливается на сессию.
спасибо, запустил sql, (С) только у параметра transaction_isolation, у statement_timeout нет ничего, даже (*)
для user есть только одна настройка search_path, но я думаю она не влияет на statement_timeout
Чаво? Посмотреть настройки всего подряд в текущей сессии можно вот этим запросом. Не верю, что он возвращает одну строчку с search_path.
она все и выводит, я просто привел настройки, где source это user, остальные default, configuration file /var/lib/pgsql/10/data/postgresql.conf, override и client. Лишнего, типа set statement_timeout ничего не нашел
Обсуждают сегодня