Re: Problem about postponing gathering partial paths for topmost scan/join rel

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Antonin Houska <ah(at)cybertec(dot)at>
Cc: Richard Guo <guofenglinux(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Problem about postponing gathering partial paths for topmost scan/join rel
Date: 2022-07-30 17:15:04
Message-ID: 516633.1659201304@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Antonin Houska <ah(at)cybertec(dot)at> writes:
> I'm going to set the CF entry to "ready for committer'".

I pushed this with some editorialization:

* Grepping found another caller of generate_useful_gather_paths
with the exact same bug, in geqo_eval.c. (A wise man once said
that the most powerful bug-finding heuristic he knew was "where
else did we make this same mistake?")

* I thought it best to make set_rel_pathlist() use an identically-
worded test for the equivalent purpose for baserels. It's not
actively broken, but examining bms_membership seems confusingly
complicated, and I doubt it's faster than bms_equal either.

* I omitted the test case because I didn't think it would buy us
anything. It failed to detect the GEQO variant of the bug, and
it would fail to detect the most likely future way of breaking
this, which is that I forget to change these instances of
all_baserels next time I rebase [1].

regards, tom lane

[1] https://commitfest.postgresql.org/39/3755/

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2022-07-30 18:25:52 Re: Add test of pg_prewarm extenion
Previous Message Tom Lane 2022-07-30 16:51:35 Re: standby recovery fails (tablespace related) (tentative patch and discussion)