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: Peter Eisentraut <peter@eisentraut.org>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-09-26T20:37:58Z
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
Attachments
- v5-0001-Add-GROUP-BY-ALL.patch (text/x-diff) patch v5-0001
[ trimming the cc: list because gmail decided my last was spam ] David Christensen <david@pgguru.net> writes: > Great feedback, thanks; attached is v4 which should address these comments. I did a pass of cleanup over this --- mostly cosmetic, but not entirely. Along the way I discovered a pre-existing bug: transformSelectStmt does qry->groupDistinct = stmt->groupDistinct; but transformPLAssignStmt fails to, with the result that GROUP BY DISTINCT would misbehave if used in a plpgsql "expression" context. I'm not hugely surprised that no one has reported that from the field, but nonetheless it's broken. In the attached v5 I just quickly added the missing line and moved on, but we'll need to back-patch that bit. (Maybe we'd be well advised to refactor to reduce the amount of duplicated code that needs to be kept in sync?) I have not attempted to address the definitional issues I just queried Peter about. Other open items: * Documentation * The test cases deserve reconsideration now that we think their charter only goes as far as EXPLAIN'ing the results; some of them seem pretty redundant in this context. regards, tom lane