Re: Support "Right Semi Join" plan shapes - Mailing list pgsql-hackers

From wenhui qiu
Subject Re: Support "Right Semi Join" plan shapes
Date
Msg-id CAGjGUAJmODSrCu92FsSE+e3sMNm7iq4F7i1iLx_ftuT=NF132w@mail.gmail.com
Whole thread Raw
In response to Re: Support "Right Semi Join" plan shapes  (Alena Rybakina <lena.ribackina@yandex.ru>)
Responses Re: Support "Right Semi Join" plan shapes
List pgsql-hackers
Hi Alena Rybakina
 I saw this code snippet also disable mergejoin ,I think it same  effect 

+ /*
+ * For now we do not support RIGHT_SEMI join in mergejoin.
+ */
+ if (jointype == JOIN_RIGHT_SEMI)
+ {
+ *mergejoin_allowed = false;
+ return NIL;
+ }
+

Regards


Alena Rybakina <lena.ribackina@yandex.ru> 于2024年1月30日周二 14:51写道:
Hi! Thank you for your work on this subject.

I have reviewed your patch and I think it is better to add an Assert for
JOIN_RIGHT_SEMI to the ExecMergeJoin and ExecNestLoop functions to
prevent the use of RIGHT_SEMI for these types of connections (NestedLoop
and MergeJoin).
Mostly I'm suggesting this because of the set_join_pathlist_hook
function, which is in the add_paths_to_joinrel function, which allows
you to create a custom node. What do you think?

--
Regards,
Alena Rybakina
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

pgsql-hackers by date:

Previous
From: Andrei Lepikhov
Date:
Subject: Re: POC, WIP: OR-clause support for indexes
Next
From: John Naylor
Date:
Subject: Re: What about Perl autodie?