Fix Memoize to work with partitionwise joining.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 5 Dec 2022 17:36:40 +0000 (12:36 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 5 Dec 2022 17:36:40 +0000 (12:36 -0500)
commitd69d01ba9d8d774487032459ebb83d2086715f01
tree76b2daf0834bd0902041fa34d10eed34a38ccf82
parent35ce24c333cf6dee3c92bc5f67553c7720bd9988
Fix Memoize to work with partitionwise joining.

A couple of places weren't up to speed for this.  By sheer good
luck, we didn't fail but just selected a non-memoized join plan,
at least in the test case we have.  Nonetheless, it's a bug,
and I'm not quite sure that it couldn't have worse consequences
in other examples.  So back-patch to v14 where Memoize came in.

Richard Guo

Discussion: https://postgr.es/m/CAMbWs48GkNom272sfp0-WeD6_0HSR19BJ4H1c9ZKSfbVnJsvRg@mail.gmail.com
src/backend/optimizer/path/joinpath.c
src/backend/optimizer/util/pathnode.c
src/include/nodes/pathnodes.h
src/test/regress/expected/memoize.out
src/test/regress/sql/memoize.sql