From: | Richard Guo <guofenglinux(at)gmail(dot)com> |
---|---|
To: | Li Japin <japinli(at)hotmail(dot)com> |
Cc: | Alena Rybakina <lena(dot)ribackina(at)yandex(dot)ru>, wenhui qiu <qiuwenhuifx(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, vignesh C <vignesh21(at)gmail(dot)com> |
Subject: | Re: Support "Right Semi Join" plan shapes |
Date: | 2024-06-28 06:54:39 |
Message-ID: | CAMbWs48wcjtMfSVWaLWR3+aUn4LoJ=Szct_SRCgBfWXBkBMs3g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Jun 24, 2024 at 5:59 PM Richard Guo <guofenglinux(at)gmail(dot)com> wrote:
> I noticed that this patch changes the plan of a query in join.sql from
> a semi join to right semi join, compromising the original purpose of
> this query, which was to test the fix for neqjoinsel's behavior for
> semijoins (see commit 7ca25b7d).
>
> --
> -- semijoin selectivity for <>
> --
> explain (costs off)
> select * from int4_tbl i4, tenk1 a
> where exists(select * from tenk1 b
> where a.twothousand = b.twothousand and a.fivethous <> b.fivethous)
> and i4.f1 = a.tenthous;
>
> So I've changed this test case a bit so that it is still testing what it
> is supposed to test.
I've refined this test case further to make it more stable by using an
additional filter 'a.tenthous < 5000'. Besides, I noticed a surplus
blank line in ExecHashJoinImpl(). I've removed it in the v7 patch.
Thanks
Richard
Attachment | Content-Type | Size |
---|---|---|
v7-0001-Support-Right-Semi-Join-plan-shapes.patch | application/octet-stream | 32.5 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2024-06-28 07:03:48 | Re: Schema variables - new implementation for Postgres 15 |
Previous Message | Tatsuro Yamada | 2024-06-28 06:45:35 | Re: Showing applied extended statistics in explain Part 2 |