Re: Support "Right Semi Join" plan shapes

From: Richard Guo <guofenglinux(at)gmail(dot)com>
To: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Support "Right Semi Join" plan shapes
Date: 2023-08-10 07:24:28
Message-ID: CAMbWs4_ccjTJSksy5Z_WxmhoxO5n2PZ49qSQHaXb2JxzKZ=x8g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Apr 18, 2023 at 5:07 PM Richard Guo <guofenglinux(at)gmail(dot)com> wrote:

> In thread [1] which discussed 'Right Anti Join', Tom once mentioned
> 'Right Semi Join'. After a preliminary investigation I think it is
> beneficial and can be implemented with very short change. With 'Right
> Semi Join', what we want to do is to just have the first match for each
> inner tuple. For HashJoin, after scanning the hash bucket for matches
> to current outer, we just need to check whether the inner tuple has been
> set match and skip it if so. For MergeJoin, we can do it by avoiding
> restoring inner scan to the marked tuple in EXEC_MJ_TESTOUTER, in the
> case when new outer tuple == marked tuple.
>
> As that thread is already too long, fork a new thread and attach a patch
> used for discussion. The patch implements 'Right Semi Join' for
> HashJoin.
>

The cfbot reminds that this patch does not apply any more, so rebase it
to v2.

Thanks
Richard

Attachment Content-Type Size
v2-0001-Support-Right-Semi-Join-plan-shapes.patch application/octet-stream 24.6 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Masahiko Sawada 2023-08-10 07:30:40 Re: [PoC] pg_upgrade: allow to upgrade publisher node
Previous Message Laetitia Avrot 2023-08-10 07:06:31 Re: Adding a pg_servername() function