From: | Richard Guo <rguo(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Remove the RTE_GROUP RTE if we drop the groupClause |
Date: | 2024-10-25 00:53:21 |
Message-ID: | E1t48Zu-002Iuz-3K@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Remove the RTE_GROUP RTE if we drop the groupClause
For an EXISTS subquery, the only thing that matters is whether it
returns zero or more than zero rows. Therefore, we remove certain SQL
features that won't affect that, among them the GROUP BY clauses.
After we drop the groupClause, we'd better remove the RTE_GROUP RTE
and clear the hasGroupRTE flag, as they depend on the groupClause.
Failing to do so could result in a bogus RTE_GROUP entry in the parent
query, leading to an assertion failure on the hasGroupRTE flag.
Reported-by: David Rowley
Author: Richard Guo
Discussion: https://postgr.es/m/CAApHDvp2_yht8uPLyWO-kVGWZhYvx5zjGfSrg4fBQ9fsC13V0g@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/ffe12d1d22e73d7bcda1f0ee9af33d04fab199b2
Modified Files
--------------
src/backend/optimizer/plan/subselect.c | 24 ++++++++++++++++++++++++
src/test/regress/expected/join.out | 15 +++++++++++++++
src/test/regress/sql/join.sql | 8 ++++++++
3 files changed, 47 insertions(+)
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2024-10-25 01:34:47 | pgsql: injection_points: Disable one permutation in isolation test "bas |
Previous Message | Jeff Davis | 2024-10-24 19:09:12 | pgsql: Add functions pg_restore_relation_stats(), pg_restore_attribute_ |