Search Postgresql Archives

Aw: Re: question on auto_explain

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > auto_explain automatically produces the explain output of a query that is running for reals.  The effect is identical to running explain analyze except your output > here is whatever the query would produce instead of the explain output, which instead goes into the log.
> 
> Thanks David. I take this to mean that auto_explain produces the same side-effects as manually running "explain analyze" does.
> 
> Would this warrant a documentation patch ?  Like so:
> 
>   auto_explain.log_analyze causes EXPLAIN ANALYZE output, rather than just EXPLAIN output, to be printed when an execution plan is logged. Hence
>   the same caveats apply for INSERT/UPDATE/DELETE queries.
> 
> Also, doesn't this makes auto_explain.log_analyze = TRUE rather surprising as it
> can make any INSERT/UPDATE/DELETE fail when it is slow for some reason ...

Ah, wait, I think I've been a bit dense here. I thought it was a two-step process of
first running any queries "normally", somehow magically noticing slow ones as per
auto_explain.log_min_duration, and re-running those with EPXPLAIN ANALYZE prepended.

I think I understand better now: with auto_explain ALL queries are run with EXPLAIN ANALYZE
prepended BUT the output is two-fold: query results are fed into whatever wire protocol client
is and EXPLAIN output is re-routed to the log. Does that sound right ?

I think was misguided by psql discarding (?) query results (the rows)
while displaying EXPLAIN output only.

The auto_explain docs might perhaps still benefit from a more
explicit hint towards write query side effects.

Karsten






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux