]> granicus.if.org Git - postgresql/commit
Re-allow SRFs and window functions within sub-selects within aggregates.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 27 Jun 2017 21:51:11 +0000 (17:51 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 27 Jun 2017 21:51:11 +0000 (17:51 -0400)
commit9c7dc89282b3dac5685c39d4d792b02ca573c2d3
tree9bb7d8b895e2836134a4a39e6aa4193e02da14a7
parent2710ccd782d0308a3fa1ab193531183148e9b626
Re-allow SRFs and window functions within sub-selects within aggregates.

check_agg_arguments_walker threw an error upon seeing a SRF or window
function, but that is too aggressive: if the function is within a
sub-select then it's perfectly fine.  I broke the SRF case in commit
0436f6bde by copying the logic for window functions ... but that was
broken too, and had been since commit eaccfded9.

Repair both cases in HEAD, and the window function case back to 9.3.
9.2 gets this right.
src/backend/parser/parse_agg.c
src/test/regress/expected/tsrf.out
src/test/regress/sql/tsrf.sql