Re: remove_useless_joins vs. bug #19560

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: 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-08-28 13:43:10
Message-ID: 1147476.1787924590@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Richard Guo <guofenglinux(at)gmail(dot)com> writes:
> On Fri, Aug 28, 2026 at 12:53 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I take your point that the early-exit-for-trivial-jointree path now
>> fails to set these fields at all, but I'd rather handle that by
>> adding a couple more lines in that path to fill them in. Yup, it'd
>> be duplicate logic, but it seems cleaner that way.

> Fair enough. I agree that keeping all of this together at the end of
> query_planner makes it clear that these fields are not valid before
> then, and that a half-filled set during the restart loop is a hazard.
> Adding the few lines to the early-exit path sounds good to me.

Cool.

>> Well, yeah, but on that argument we could drop the entire stanza,
>> because it's just checking that join_is_removable didn't mess up.
>> Maybe we should? I've not heard that anybody ever hit those Asserts.

> I think so.

Sold. I'll make it so and push. Thanks for reviewing!

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2026-08-28 13:44:01 Re: locale / encoding / meson cleanup
Previous Message Jan Nidzwetzki 2026-08-28 13:42:15 Re: Enable partitionwise join for partition keys wrapped by RelabelType