| From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
|---|---|
| To: | Ajay Pal <ajay(dot)pal(dot)k(at)gmail(dot)com> |
| Cc: | Jakub Wartak <jakub(dot)wartak(at)enterprisedb(dot)com>, Lukas Fittl <lukas(at)fittl(dot)com>, Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>, Dian Fay <di(at)nmfay(dot)com>, Matheus Alcantara <matheusssilv97(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: pg_plan_advice |
| Date: | 2026-01-21 19:26:02 |
| Message-ID: | CA+TgmoaDqNB68kN8OO=4rKSALrWQ8LGRpU_kKi_vr9p=YgBqYQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Wed, Jan 21, 2026 at 6:52 AM Ajay Pal <ajay(dot)pal(dot)k(at)gmail(dot)com> wrote:
> Subsequent testing revealed that UNION operations involving constants
> which enforce empty subplans result in the generated partition-wise
> plan not being recognized by the planner.
Good catch, thank you. Should be fixed in this version.
Changes in v11:
- What was previously 0004 has been promoted to 0001. This is the
pgs_mask stuff to allow extensions to control the planner more easily,
which seems separately committable based on reviews to this point.
- Fixed a bug found by Jacob wherein GATHER() and some other tags
permitted multiple levels of nested sublists instead of, as intended,
only a single one.
- Added a test for that case, too.
- Fixed JOIN_ORDER(justonerel) so that it correctly reports "matched"
instead of incorrectly reporting "partially matched" even when
justonerel was part of a join problem.
- Add tests for specifying a prefix of the join order list.
- Removed an XXX comment from the join order tests that now seems bogus to me.
- Fixed a bug in pg_plan_advice_explain_text_multiline that caused it
to display nothing in text format when the label was empty, instead of
when the value was empty.
- Add COSTS OFF to various tests in syntax.sql. I initially omitted
this because I thought it wouldn't be necessary, but I should know
better.
- Add a test for EXPLAIN (PLAN_ADVICE) in non-text format.
- Add tests for SEMIJOIN_UNIQUE() and SEMIJOIN_NON_UNIQUE().
- Rewrite a bunch of buggy logic related to SEMIJOIN_UNIQUE() and
SEMIJOIN_NON_UNIQUE().
- Show the join type in pg_plan_advice.trace_mask output.
- Per this email from Ajay, apply the unique_nonjoin_rtekind() test to
elided (Merge)Append nodes as we do to non-elided ones.
--
Robert Haas
EDB: http://www.enterprisedb.com
| Attachment | Content-Type | Size |
|---|---|---|
| v11-0002-Store-information-about-range-table-flattening-i.patch | application/octet-stream | 7.8 KB |
| v11-0003-Store-information-about-elided-nodes-in-the-fina.patch | application/octet-stream | 9.8 KB |
| v11-0001-Allow-for-plugin-control-over-path-generation-st.patch | application/octet-stream | 56.1 KB |
| v11-0004-Store-information-about-Append-node-consolidatio.patch | application/octet-stream | 40.5 KB |
| v11-0005-WIP-Add-pg_plan_advice-contrib-module.patch | application/octet-stream | 423.3 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Matheus Alcantara | 2026-01-21 19:26:14 | Re: support ALTER COLUMN SET EXPRESSION over virtual generated column with check constraint |
| Previous Message | Álvaro Herrera | 2026-01-21 19:23:50 | Re: [PATCH] ternary reloption type |