pgsql: Fix incorrect hash equality operator bug in Memoize

From: David Rowley <drowley(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix incorrect hash equality operator bug in Memoize
Date: 2021-11-08 01:41:01
Message-ID: E1mjtef-0003jI-Nx@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix incorrect hash equality operator bug in Memoize

In v14, because we don't have a field in RestrictInfo to cache both the
left and right type's hash equality operator, we just restrict the scope
of Memoize to only when the left and right types of a RestrictInfo are the
same.

In master we add another field to RestrictInfo and cache both hash
equality operators.

Reported-by: Jaime Casanova
Author: David Rowley
Discussion: https://postgr.es/m/20210929185544.GB24346%40ahch-to
Backpatch-through: 14

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/39a3105678a247bbfdc132cd95db5b515b8cd7f6

Modified Files
--------------
src/backend/nodes/copyfuncs.c | 3 ++-
src/backend/nodes/outfuncs.c | 3 ++-
src/backend/optimizer/path/joinpath.c | 31 +++++++++++++++++++++++--------
src/backend/optimizer/plan/initsplan.c | 28 ++++++++++++++++++++--------
src/backend/optimizer/util/restrictinfo.c | 6 ++++--
src/include/nodes/pathnodes.h | 5 +++--
6 files changed, 54 insertions(+), 22 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2021-11-08 01:41:49 pgsql: Fix incorrect hash equality operator bug in Memoize
Previous Message Tomas Vondra 2021-11-08 00:35:55 pgsql: Fix gist_bool_ops to use gbtreekey2