Re: Add semi-join pushdown to postgres_fdw
Alexander Korotkov <aekorotkov@gmail.com>
From: Alexander Korotkov <aekorotkov@gmail.com>
To: Alexander Pyhalov <a.pyhalov@postgrespro.ru>
Cc: Tomas Vondra <tomas.vondra@enterprisedb.com>, "Fujii.Yuki@df.MitsubishiElectric.co.jp"
<Fujii.Yuki@df.mitsubishielectric.co.jp>, Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>,
Pgsql Hackers <pgsql-hackers@postgresql.org>, Ian Lawrence Barwick <barwick@gmail.com>
Date: 2023-12-03T20:52:30Z
Lists: pgsql-hackers
Attachments
- 0001-Add-support-for-deparsing-semi-joins-to-contrib-p-v8.patch (application/octet-stream) patch v8-0001
Hi, Alexander! On Mon, Nov 27, 2023 at 5:11 PM Alexander Pyhalov <a.pyhalov@postgrespro.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
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
postgres_fdw: Avoid pulling up restrict infos from subqueries
- 729fe699e612 17.5 landed
- 023fb512755f 18.0 landed
-
Add support for deparsing semi-joins to contrib/postgres_fdw
- 824dbea3e41e 17.0 landed
-
Move PartitioPruneInfo out of plan nodes into PlannedStmt
- ec386948948c 16.0 cited