Re: [PATCH] GROUP BY ALL
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: David Christensen <david@pgguru.net>
Cc: Andrey Borodin <x4mmm@yandex-team.ru>,
Peter Eisentraut <peter@eisentraut.org>,
pgsql-hackers <pgsql-hackers@postgresql.org>,
"David G. Johnston" <david.g.johnston@gmail.com>,
Jelte Fennema-Nio <postgres@jeltef.nl>
Date: 2025-09-26T16:23:35Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add GROUP BY ALL.
- ef38a4d9756d 19 (unreleased) landed
-
Refactor to avoid code duplication in transformPLAssignStmt.
- b0fb2c6aa5a4 19 (unreleased) landed
-
Fix missed copying of groupDistinct in transformPLAssignStmt.
- b7f6798c056a 16.11 landed
- 9ca79896aba3 15.15 landed
- 78a284b0b8d4 18.1 landed
- 7504d2be9eb4 19 (unreleased) landed
- 3fc9aa5b0233 17.7 landed
- 0be39b4b1a01 14.20 landed
David Christensen <david@pgguru.net> writes: > On Fri, Sep 26, 2025 at 11:05 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: >> contain_agg_clause will blow up on a SubLink, so I doubt this is >> gonna be robust. > Fair enough, see that Assert now; easy enough to make a new > expression_tree_walker that only looks for Aggref and short-circuits > SubLink (which I assume is the right behavior here, but might have to > add some more tests/play around with subqueries in the GROUP BY ALL > part). No, I think the correct behavior would have to be to descend into SubLinks to see if they contain any aggregates belonging to the outer query level. However (looks around) we do already have that code. See contain_aggs_of_level. (contain_agg_clause is essentially a simplified version that is okay to use in the planner because it's already gotten rid of sublinks.) What mainly concerns me at this point is whether we've identified aggregate levels at the point in parsing where you want to run this. I have a bit of a worry that that might interact with grouping. Presumably the SQL committee thought about that, so it's probably soluble, but ... regards, tom lane