Специализированные параметры

Эта функциональность была разработана для того, чтобы дополнительные модули (например, процедурные языки) могли добавлять параметры, обычно неизвестные QHB. Это позволяет настраивать модули расширения стандартными способами.

Имена специализированных параметров состоят из двух частей: имя расширения, затем, после точки, собственно имя параметра, по аналогии с полными именами в SQL. Например: plpgsql.variable_conflict.

Поскольку установка специализированных параметров может потребоваться в процессах, не загрузивших соответствующий модуль расширения, QHB примет значения для любого имени параметра, состоящего из двух частей. Такие переменные рассматриваются как местозаполнители и не действуют до тех пор, пока не будет загружен модуль, который их определяет. Когда модуль расширения загружается, он добавляет свои определения переменных, преобразует любые значения местозаполнителей в соответствии с этими определениями. Если имеются какие-либо нераспознанные местозаполнители, начинающиеся с его имени расширения, выдаются предупреждения, а эти местозаполнители удаляются.