From: | Karsten Hilbert <Karsten(dot)Hilbert(at)gmx(dot)net> |
---|---|
To: | |
Cc: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Aw: Re: question on auto_explain |
Date: | 2023-08-03 19:45:39 |
Message-ID: | trinity-7a634cbb-d52a-48c7-b541-78c3b16a8629-1691091939561@3c-app-gmx-bs14 |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> > 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
From | Date | Subject | |
---|---|---|---|
Next Message | Mark Atlantic | 2023-08-03 22:58:49 | Re: Installation Issue |
Previous Message | Don Seiler | 2023-08-03 19:24:04 | Runaway Initial Table Syncs in Logical Replication? |