Как получить время анализа и перезаписи из PostgreSQL планов запросов? - PullRequest
0 голосов
/ 21 марта 2020

Документация четко заявляет

Время планирования, показанное EXPLAIN ANALYZE, - это время, которое потребовалось для создания плана запроса из проанализированного запроса и его оптимизации. Он не включает в себя разбор или переписывание.

Тогда как можно получить это время, которое не включено (разбор и перезапись самими собой)? Я понимаю, что можно взять общее время запроса, но помимо этого, возможно ли получить это время индивидуально другим способом?

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

1 Ответ

0 голосов
/ 21 марта 2020

Звучит так, как вы хотите настройки :

log_parser_stats
log_planner_stats
log_executor_stats

Формат вывода не очень приятный, и громкость вывода также очень высока на занятом сервер, если вы не установите их только в одном сеансе, но я не думаю, что что-то еще даст вам то, что вы хотите.

В плане также вы, вероятно, захотите использовать это в сочетании с auto_explain.

...