| From: | Lukas Fittl <lukas(at)fittl(dot)com> |
|---|---|
| To: | Hristos Nenkov <nenkov2004(at)gmail(dot)com> |
| Cc: | pgsql-hackers(at)postgresql(dot)org, idrissaajalloh(at)gmail(dot)com |
| Subject: | Re: [PATCH] auto_explain: preserve per-query sampling decisions (#19877) |
| Date: | 2026-11-14 20:50:41 |
| Message-ID: | CAP53PkzZTpBwd5Um8UMw=vs+HV8enCZ5tsbk+MxBjuDk0FobzA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi,
On Sat, Nov 14, 2026 at 10:49 AM Hristos Nenkov <nenkov2004(at)gmail(dot)com> wrote:
> I reproduced #19877 and attached a candidate fix for review.
>
> auto_explain currently checks its backend-global sampling flag again at
> ExecutorEnd. A statement executed while a cursor remains open can replace
> that flag, so a sampled cursor loses its plan. With pg_stat_statements
> requesting instrumentation, the reverse also happens: an unsampled cursor
> can be logged after another statement enables sampling.
>
> The patch records selection and nesting depth in auto_explain's own
> QueryDesc extension state, following the existing pg_stat_statements
> pattern. ExecutorEnd uses that state rather than the latest global flag.
> It also adds cursor tests for explicit CLOSE and implicit COMMIT, with
> pg_stat_statements preloaded.
I think the patch approach could be workable - but is this really a
problem in practice?
We've gotten a lot of bug reports recently that fit the category of
"LLM found an edge case and reported it", and when I saw this one
first I did not think this was a real world problem.
Adding more code carries maintenance cost, and I think it should be
justified by an actual end user report running into this problem.
Have you seen this problem yourself in practice?
Thanks,
Lukas
--
Lukas Fittl
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Joao Rito | 2026-11-14 21:33:30 | Re: CREATE SCHEMA still resolves unqualified type names in pg_temp |
| Previous Message | Greg Burd | 2026-11-14 20:35:52 | Re: Hash index: stop registering pin-only bucket pages in WAL (remove REGBUF_NO_CHANGE) |