| From: | David Rowley <dgrowleyml(at)gmail(dot)com> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | Andres Freund <andres(at)anarazel(dot)de>, maxim(dot)boguk(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Subject: | Re: BUG #17871: JIT during postgresql_fdw remote_estimates EXPLAIN have very negatively effect on planning time |
| Date: | 2023-03-28 03:05:00 |
| Message-ID: | CAApHDvqqJ+Q3p984U4Qu3DJ3PEZUAu=8-reH3-Ztv+sVoYkAhA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Tue, 28 Mar 2023 at 10:38, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> I was wondering if we could skip doing even that much when
> EXEC_FLAG_EXPLAIN_ONLY is set. Without a test case, though,
> I'm not very sure where the jitter is getting reached.
It seems to be coming from the qual initialisation in nodeSeqscan.c:
ie. ExecInitSeqScan -> ExecInitQual -> ExecReadyExpr ->
jit_compile_expr
I guess that means just add a check for EXEC_FLAG_EXPLAIN_ONLY in
jit_compile_expr, or only set the es_jit_flags bits in
standard_ExecutorStart() when not in EXEC_FLAG_EXPLAIN_ONLY. I'm not
really sure which of those is better, but the attached does the former
and seems to fix the issue.
David
| Attachment | Content-Type | Size |
|---|---|---|
| dont_jit_with_explain_only.patch | application/octet-stream | 706 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2023-03-28 03:20:30 | Re: BUG #17871: JIT during postgresql_fdw remote_estimates EXPLAIN have very negatively effect on planning time |
| Previous Message | Maxim Boguk | 2023-03-28 02:27:51 | Re: BUG #17871: JIT during postgresql_fdw remote_estimates EXPLAIN have very negatively effect on planning time |