From: | Alexander Pyhalov <a(dot)pyhalov(at)postgrespro(dot)ru> |
---|---|
To: | Alexander Korotkov <aekorotkov(at)gmail(dot)com> |
Cc: | Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, "Fujii(dot)Yuki(at)df(dot)MitsubishiElectric(dot)co(dot)jp" <Fujii(dot)Yuki(at)df(dot)mitsubishielectric(dot)co(dot)jp>, Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org>, Ian Lawrence Barwick <barwick(at)gmail(dot)com> |
Subject: | Re: Add semi-join pushdown to postgres_fdw |
Date: | 2023-12-05 10:29:47 |
Message-ID: | b333e7556b6c75400ec3176fcf3a4665@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Alexander Korotkov писал(а) 2023-12-03 23:52:
> Hi, Alexander!
>
> On Mon, Nov 27, 2023 at 5:11 PM Alexander Pyhalov
> <a(dot)pyhalov(at)postgrespro(dot)ru> wrote:
>> Alexander Korotkov писал(а) 2023-11-27 03:49:
>>
>> > Thank you for the revision.
>> >
>> > I've revised the patch myself. I've replaced StringInfo with
>> > additional conds into a list of strings as I proposed before. I think
>> > the code became much clearer. Also, it gets rid of some unnecessary
>> > allocations.
>> >
>> > I think the code itself is not in bad shape. But patch lacks some
>> > high-level description of semi-joins processing as well as comments on
>> > each manipulation with additional conds. Could you please add this?
>> >
>>
>> Hi. The updated patch looks better. It seems I've failed to fix logic
>> in
>> deparseFromExprForRel() when tried to convert StringInfos to Lists.
>>
>> I've added some comments. The most complete description of how
>> SEMI-JOIN
>> is processed, is located in deparseFromExprForRel(). Unfortunately,
>> there seems to be no single place, describing current JOIN deparsing
>> logic.
>
> Looks good to me. I've made some grammar and formatting adjustments.
> Also, I've written the commit message.
>
> Now, I think this looks good. I'm going to push this if no objections.
>
> ------
> Regards,
> Alexander Korotkov
Hi. No objections from my side.
Perhaps, some rephrasing is needed in comment in semijoin_target_ok():
"The planner can create semi-joins, which refer to inner rel
vars in its target list."
Perhaps, change "semi-joins, which refer" to "a semi-join, which refers
...",
as later we speak about "its" target list.
--
Best regards,
Alexander Pyhalov,
Postgres Professional
From | Date | Subject | |
---|---|---|---|
Next Message | Andrei Lepikhov | 2023-12-05 10:55:00 | Re: POC, WIP: OR-clause support for indexes |
Previous Message | shveta malik | 2023-12-05 10:29:25 | Re: Synchronizing slots from primary to standby |