On Tue, Jun 30, 2026 at 10:52 AM Robert Haas <[email protected]> wrote: > On Tue, Jun 30, 2026 at 10:36 AM Mahendra Singh Thalor > <[email protected]> wrote: > > While testing pg_plan_advice together with postgres_fdw, I noticed that the > > advice generated for a single-relation foreign scan is not round-trip safe, > > which contradicts the "round-trip safe" guarantee documented in > > contrib/pg_plan_advice/README. > > > > When postgres_fdw pushes an aggregate down over a single foreign table, the > > resulting ForeignScan has scanrelid == 0 but fs_relids names exactly one > > relation. pg_plan_advice generates FOREIGN_JOIN(<rel>) advice for it. > > However, > > the advice parser requires a FOREIGN_JOIN target to name more than one > > relation, so feeding the generated advice back in fails to parse. > > Thanks for the report. I think this patch looks correct, but the > comments are a bit overly verbose. Barring objections or other > comments, I'll tighten this up, commit and back-patch.
Done. I ended up making some changes to the test case as well, basically to make it less likely that it could accidentally pass. -- Robert Haas EDB: http://www.enterprisedb.com
