Hi,

On Fri Oct 9, 2026 at 4:13 PM -03, Tom Lane wrote:
> Here's a v2 patch incorporating the cosmetic changes I suggested,
> and substantially enlarging the comments around the area.
> I don't think we're ready to commit though, because I see a number
> of loose ends.
>

I've spent some time testing v2 with some planner GUC combinations
(hashjoin/mergejoin/material/ memoize off, collapse limits = 1,
partitionwise join, seqscan off...) and on master it returned wrong
results, and all of them had a Materialize on top of a parameterized
Append, as Richard described. With v2 all of them return the right
results, and the only plan change on those is the join filter coming
back. I didn't find any other wrong results with v2.

Just a small comment: Since Shihao's LATERAL case also fails on v16,
perhaps it's worth adding it to the regression tests too, so we have a
test that fails on all the back branches.

I also checked the back branches. v2 does not apply cleanly on 18, 17
and 16. On those branches only Material, Memoize, Unique and
GroupingSets paths copy the subpath's param_info, since the others
started doing that with 24225ad9aaf in v19. I think that on 17 and 16
there are two more differences: get_memoize_path() doesn't read
ppi_serials, and get_param_path_clause_serials() still has to handle
parameterized MergeAppend paths, which were only removed in 18. 

--
Matheus Alcantara
EDB: https://www.enterprisedb.com


Reply via email to