| From: | jie wang <jugierwang(at)gmail(dot)com> |
|---|---|
| To: | Lakshmi N <lakshmin(dot)jhs(at)gmail(dot)com> |
| Cc: | pgsql-hackers(at)postgresql(dot)org, pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: DOCS: pg_plan_advice minor doc fixes |
| Date: | 2026-04-08 07:52:10 |
| Message-ID: | CAJnZyeAdvzY01rTb_XDN3PfAPD0NZ61Ndf0J4j2H=GBTDVr5sQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Lakshmi N <lakshmin(dot)jhs(at)gmail(dot)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`
Best regards,
--
wang jie
| Attachment | Content-Type | Size |
|---|---|---|
| v2-0001-DOCS-Update-pgplanadvice-tags-for-FOREIGN_JOIN-an.patch | application/octet-stream | 2.5 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tender Wang | 2026-04-08 07:56:46 | Fix "detected double pfree in PgStat Snapshot 0x557d9926b400" error |
| Previous Message | Antonin Houska | 2026-04-08 07:31:55 | Re: Adding REPACK [concurrently] |