10
Расширение pg_hint_plan
Корректировка плана выполнения
с помощью указаний
в комментарии специального вида в коде запроса
в служебной таблице расширения
текст
запроса
дерево
запроса
дерево
запроса
план
запроса
/*+ … */ SELECT …
планирование
разбор переписывание
Модуль pg_hint_plan разработан японской компанией NTT и включен
в состав Postgres Pro Enterprise. Репозиторий проекта:
Расширение предназначено для принудительной корректировки планов
выполнения с помощью указаний (hints), помещаемых непосредственно
в код SQL в виде комментариев специального вида
/*+ … */. В случаях, когда принудительно выбранный план выполнить
нельзя, планировщик игнорирует указания.
Обработчик pg_hint_plan считывает указания только из первого
блочного комментария и немедленно прекращает разбор, обнаруживая
недопустимый символ. Допустимыми символами являются буквы,
цифры, пробелы, подчеркивания, запятые и скобки. Комментарий
с указаниями не может содержать в себе другой блочный комментарий.
Указания можно размещать в нескольких строках для улучшения
читаемости.
Ошибки в записи или неправильные имена указаний считаются
ошибками синтаксиса и выводятся в журнал сообщений сервера.
Указания с неправильными обращениями к объектам игнорируются,
а в журнале помечаются как неиспользованные. При дублировании
или противоречиях в указаниях будет применяться последнее указание,
а в журнал выведется сообщение о дублировании.
Подробности в документации: