Re: BUG #17502: View based on window functions returns wrong results when queried
David Rowley <dgrowleyml@gmail.com>
From: David Rowley <dgrowleyml@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Daniel Farkaš <daniel.farkas@datoris.com>, Magnus Hagander <magnus@hagander.net>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2022-05-30T02:38:43Z
Lists: pgsql-bugs
On Mon, 30 May 2022 at 14:19, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > David Rowley <dgrowleyml@gmail.com> writes: > > The problem seems to be down to the fact that > > remove_unused_subquery_outputs() does not check if the to-be-removed > > target entry references WindowClauses which contain set-returning > > functions. > > I was sort of wondering why we allow SRFs in this context in the > first place. The results don't seem terribly well-defined to me. > In particular, a WindowFunc invocation is not supposed to change the > number of rows in the query result, and yet this one is doing so. That would certainly be an easier fix for the reported problem. Do you think it would fly to add such a restriction in the backbranches? David
Commits
-
Disallow set-returning functions within window OVER clauses.
- 1de468099d27 master landed
- 0c15b715c651 19 (unreleased) landed