diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2022-12-05 12:36:41 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2022-12-05 12:36:41 -0500 |
commit | dc3648f65bea3d3373b4e0026ae83bd8f436ee40 (patch) | |
tree | 55a1e515fd7f99a033157ba7b24511d448b3bd57 /src/include/nodes/pathnodes.h | |
parent | 1bd84ef6778017f89c2ca80377c3ae02ed3f4861 (diff) | |
download | postgresql-dc3648f65bea3d3373b4e0026ae83bd8f436ee40.tar.gz postgresql-dc3648f65bea3d3373b4e0026ae83bd8f436ee40.zip |
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
Diffstat (limited to 'src/include/nodes/pathnodes.h')
-rw-r--r-- | src/include/nodes/pathnodes.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/include/nodes/pathnodes.h b/src/include/nodes/pathnodes.h index f16466a0df1..e370a011412 100644 --- a/src/include/nodes/pathnodes.h +++ b/src/include/nodes/pathnodes.h @@ -1508,8 +1508,8 @@ typedef struct MemoizePath { Path path; Path *subpath; /* outerpath to cache tuples from */ - List *hash_operators; /* hash operators for each key */ - List *param_exprs; /* cache keys */ + List *hash_operators; /* OIDs of hash equality ops for cache keys */ + List *param_exprs; /* expressions that are cache keys */ bool singlerow; /* true if the cache entry is to be marked as * complete after caching the first record. */ bool binary_mode; /* true when cache key should be compared bit |