Re: auto_explain sample rate

Поиск
Список
Период
Сортировка
От Julien Rouhaud
Тема Re: auto_explain sample rate
Дата
Msg-id 56E2CD44.1040203@dalibo.com
обсуждение исходный текст
Ответ на Re: auto_explain sample rate  (Magnus Hagander <magnus@hagander.net>)
Ответы Re: auto_explain sample rate  (Magnus Hagander <magnus@hagander.net>)
Список pgsql-hackers
On 11/03/2016 11:45, Magnus Hagander wrote:
> 
> Coming back to the previous discussions about random() - AFAICT this
> patch will introduce the random() call always (in explain_ExecutorStart):
> 
> +if (auto_explain_log_min_duration >= 0 && nesting_level == 0)
> +current_query_sampled = (random() < auto_explain_sample_ratio *
> +MAX_RANDOM_VALUE);
> 
> 
> Not sure what the overhead is, but wouldn't it be better to include a
> check for current_query_sampled>0 in the  if part of that statement?
> Regardless of performance, that feels cleaner to me. Or am I missing
> something?

You mean check for auto_explain_sample_ratio > 0 ?

There would be a corner case if a query is sampled
(current_query_sampled is true) and then auto_explain_sample_ratio is
set to 0, all subsequent queries in this backend would be processed.

We could add a specific test for this case to spare a random() call, but
I fear it'd be overkill. Maybe it's better to document that the good way
to deactivate auto_explain is to set auto_explain.log_min_duration to -1.

-- 
Julien Rouhaud
http://dalibo.com - http://dalibo.org



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: [patch] Proposal for \crosstabview in psql
Следующее
От: Robert Haas
Дата:
Сообщение: Re: dblink: add polymorphic functions.