Re: DOCS: pg_plan_advice minor doc fixes
Lakshmi N <lakshmin.jhs@gmail.com>
From: Lakshmi N <lakshmin.jhs@gmail.com>
To: jie wang <jugierwang@gmail.com>
Cc: pgsql-hackers@postgresql.org, pgsql-hackers@lists.postgresql.org
Date: 2026-04-09T06:47:48Z
Lists: pgsql-hackers
Hi Jie, On Wed, Apr 8, 2026 at 12:52 AM jie wang <jugierwang@gmail.com> wrote: > > > Lakshmi N <lakshmin.jhs@gmail.com> 于2026年4月8日周三 15:09写道: > >> Hi hackers, >> >> I noticed the following minor discrepancy in the pg_plan_advice docs, >> attached a patch to address this. >> >> (1) FOREIGN SCAN should be FOREIGN JOIN in the scan method advice tag. I >> tested with FOREIGN SCAN and can confirm it gives a syntax error while the >> other one works correctly. >> >> postgres=# SET pg_plan_advice.advice = 'FOREIGN_JOIN((t1 t2))'; >> EXPLAIN (COSTS OFF, PLAN_ADVICE) >> SELECT * FROM fdw_t1 t1 JOIN fdw_t2 t2 ON t1.id = t2.t1_id; >> >> SET >> QUERY PLAN >> ------------------------------------------------- >> Foreign Scan >> Relations: (fdw_t1 t1) INNER JOIN (fdw_t2 t2) >> Supplied Plan Advice: >> FOREIGN_JOIN((t1 t2)) /* matched */ >> Generated Plan Advice: >> FOREIGN_JOIN((t1 t2)) >> NO_GATHER(t1 t2) >> (7 rows) >> >> >> (2) NESTED_LOOP_MEMOIZE is missing from the join method list in the doc >> though it is supported. Verified this by running below: >> >> postgres=# SET pg_plan_advice.advice = 'NESTED_LOOP_MEMOIZE(d)'; >> SET >> postgres=# EXPLAIN (COSTS OFF, PLAN_ADVICE) select * from t1 f JOIN t2 ON >> f.id = t2.t1_id; >> QUERY PLAN >> -------------------------------------------- >> Hash Join >> Hash Cond: (t2.t1_id = f.id) >> -> Seq Scan on t2 >> -> Hash >> -> Seq Scan on t1 f >> Supplied Plan Advice: >> NESTED_LOOP_MEMOIZE(d) /* not matched */ >> Generated Plan Advice: >> JOIN_ORDER(t2 f) >> HASH_JOIN(f) >> SEQ_SCAN(t2 f) >> NO_GATHER(f t2) >> (12 rows) >> >> Regards, >> Lakshmi >> > > > Hi, > > I found that this patch is not fully modified and is missing a part: > `Foreign Scan` ---> `Foreign Join` > LGTM. Regards, Lakshmi >
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
doc: Fix a couple of mistakes in pgplanadvice.sgml
- f4a4f1a7e628 19 (unreleased) landed