Re: Add semi-join pushdown to postgres_fdw
Tomas Vondra <tomas.vondra@enterprisedb.com>
From: Tomas Vondra <tomas.vondra@enterprisedb.com>
To: Alexander Pyhalov <a.pyhalov@postgrespro.ru>,
"Fujii.Yuki@df.MitsubishiElectric.co.jp"
<Fujii.Yuki@df.mitsubishielectric.co.jp>
Cc: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>,
Pgsql Hackers <pgsql-hackers@postgresql.org>,
Ian Lawrence Barwick <barwick@gmail.com>
Date: 2023-01-19T17:49:14Z
Lists: pgsql-hackers
Hi.
I took a quick look at the patch. It needs a rebase, although it applies
fine using patch.
A couple minor comments:
1) addl_conds seems a bit hard to understand, I'd use either the full
wording (additional_conds) or maybe extra_conds
2) some of the lines got quite long, and need a wrap
3) unknown_subquery_rels name is a bit misleading - AFAIK it's the rels
that can't be referenced from upper rels (per what the .h says). So they
are known, but hidden. Is there a better name?
4) joinrel_target_ok() needs a better comment, explaining *when* the
reltarget is safe for pushdown. The conditions are on the same row, but
the project style is to break after '&&'.
Also, I'd write
if (!IsA(var, Var))
continue;
which saves one level of nesting. IMHO that makes it more readable.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
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