pg_file_settings#

Представление pg_file_settings содержит краткую информацию о содержимом конфигурационного файла (файлов) сервера. В этом представлении появляется строка для каждой записи «name = value», присутствующей в файлах, с аннотациями, указывающими, удалось ли применить это значение. Дополнительные строки могут появляться для проблем, не связанных с записью «имя = значение», таких как синтаксические ошибки в файлах.

Это представление полезно для проверки того, будут ли работать запланированные изменения в конфигурационных файлах, или для диагностики предыдущего сбоя. Обратите внимание, что это представление сообщает о текущем содержимом файлов, а не о том, что было применено сервером в последний раз. (Для определения этого обычно достаточно представления pg_settings).

По умолчанию представление pg_file_settings может быть прочитано только суперпользователями.

Столбец

Тип данных

Описание

sourcefile

text

Полное имя пути конфигурационного файла

sourceline

int4

Номер строки в конфигурационном файле, где появляется запись

seqno

int4

Заказ, в котором обрабатываются записи (1..n)

name

text

Имя параметра конфигурации

setting

text

Значение, назначенное параметру

applied

bool

True, если значение может быть успешно применено

error

text

Если не NULL, сообщение об ошибке с указанием причин, по которым эта запись не может быть применена

Если конфигурационный файл содержит синтаксические ошибки или недопустимые имена параметров, сервер не будет пытаться применить какие-либо настройки из него, и поэтому все примененные поля будут считаться ложными. В этом случае будет одна или несколько строк с ненулевыми полями ошибок, указывающими на проблему (проблемы). В противном случае, если это возможно, будут применены отдельные настройки. Если индивидуальная настройка не может быть применена (например, недопустимое значение или настройка не может быть изменена после запуска сервера), то в поле ошибки будет соответствующее сообщение. Другой способ, при котором запись может иметь значение applied = false, - это отмена ее более поздней записью для того же имени параметра; этот случай не считается ошибкой, поэтому в поле ошибки ничего не появляется.