Re: remove_useless_joins vs. bug #19560

From: Tender Wang <tndrwang(at)gmail(dot)com>
To: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Thom Brown <thom(at)linux(dot)com>, Jacob Brazeal <jacob(dot)brazeal(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: remove_useless_joins vs. bug #19560
Date: 2026-09-16 06:58:16
Message-ID: CAHewXNm2sph6Z6QANfu67TTm2TYkbBn6dfoPCe=EeX1fb_LiTQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Fujii Masao <masao(dot)fujii(at)gmail(dot)com> 于2026年9月16日周三 13:16写道:
>
> On Wed, Sep 16, 2026 at 9:39 AM Richard Guo <guofenglinux(at)gmail(dot)com> wrote:
> > Thanks for the report! I expected some fallout from this commit,
> > though I didn't expect them quite so soon :-)
> >
> > I'll take a look.
>
> Thanks!
>
> And, here's another related issue, though it seems to have been introduced by
> commit 2ebf25e7d70.
>
>
> CREATE TABLE t(a integer PRIMARY KEY);
>
> EXPLAIN (COSTS OFF)
> SELECT u.c2
> FROM (
> SELECT CASE WHEN false THEN r.a END AS c
> FROM t l LEFT JOIN t r ON l.a = r.a
> ) s
> RIGHT JOIN t b ON true
> CROSS JOIN LATERAL (
> SELECT (SELECT s.c) AS c2
> UNION ALL
> SELECT (SELECT s.c)
> ) u;
>

It seems root->append_rel_list was not processed in preprocess_subquery_phvs().
I tried a quick fix as follows:

diff --git a/src/backend/optimizer/plan/planner.c
b/src/backend/optimizer/plan/planner.c
index 8d30131855a..fa15855411b 100644
--- a/src/backend/optimizer/plan/planner.c
+++ b/src/backend/optimizer/plan/planner.c
@@ -1643,6 +1643,9 @@ preprocess_subquery_phvs(PlannerInfo *root)
context.sublevels_up = 0;
(void) query_tree_walker(root->parse, preprocess_subquery_phvs_walker,
&context, 0);
+ if (root->append_rel_list != NIL)
+ (void) expression_tree_walker((Node *)
root->append_rel_list, preprocess_subquery_phvs_walker,
+ &context);
}

--
Thanks,
Tender Wang

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Richard Guo 2026-09-16 07:02:02 Re: remove_useless_joins vs. bug #19560
Previous Message Hayato Kuroda (Fujitsu) 2026-09-16 06:54:54 RE: pg_createsubscriber does not check output_plugin_libraries