Перейти к основному содержимому

pg_file_settings

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

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

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

СтолбецТип данныхОписание
sourcefiletextПолное имя пути конфигурационного файла
sourcelineint4Номер строки в конфигурационном файле, где появляется запись
seqnoint4Заказ, в котором обрабатываются записи (1..n)
nametextИмя параметра конфигурации
settingtextЗначение, назначенное параметру
appliedboolTrue, если значение может быть успешно применено
errortextЕсли не NULL, сообщение об ошибке с указанием причин, по которым эта запись не может быть применена

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