pgsql: Fix incorrect logic for determining safe WindowAgg run condition - Mailing list pgsql-committers

From David Rowley
Subject pgsql: Fix incorrect logic for determining safe WindowAgg run condition
Date
Msg-id E1pd0Be-003vP4-PX@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix incorrect logic for determining safe WindowAgg run conditions

The logic added in 9d9c02ccd to determine when a qual can be used as a
WindowClause run condition failed to correctly check for subqueries in the
qual.  This was being done correctly for normal subquery qual pushdowns,
it's just that 9d9c02ccd failed to follow the lead on that.

This also fixes various other cases where transforming the qual into a
WindowClause run condition in the subquery should have been disallowed.

Bug: #17826
Reported-by: Anban Company
Discussion: https://postgr.es/m/17826-7d8750952f19a5f5@postgresql.org
Backpatch-through: 15, where 9d9c02ccd was introduced.

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/371e3daaa53d09f1f265865dc9bf0dbff57c46ab

Modified Files
--------------
src/backend/optimizer/path/allpaths.c | 185 ++++++++++++++++++++++------------
src/test/regress/expected/window.out  |  43 +++++---
src/test/regress/sql/window.sql       |  17 +++-
3 files changed, 161 insertions(+), 84 deletions(-)


pgsql-committers by date:

Previous
From: David Rowley
Date:
Subject: pgsql: Fix incorrect logic for determining safe WindowAgg run condition
Next
From: Amit Kapila
Date:
Subject: pgsql: Add macros for ReorderBufferTXN toptxn.