diff options
author | Andrew Gierth <rhodiumtoad@postgresql.org> | 2019-10-03 10:54:52 +0100 |
---|---|---|
committer | Andrew Gierth <rhodiumtoad@postgresql.org> | 2019-10-03 10:54:52 +0100 |
commit | b7a1c5539ad34d7357e04cc58f9c02a101482737 (patch) | |
tree | 4a16f600470f646cf7bda3f4864799d22cd7e5b5 /src/backend/commands/async.c | |
parent | b1c1aa53182372e907f3f7f090e7eb5f432a4c9a (diff) | |
download | postgresql-b7a1c5539ad34d7357e04cc58f9c02a101482737.tar.gz postgresql-b7a1c5539ad34d7357e04cc58f9c02a101482737.zip |
Selectively include window frames in expression walks/mutates.
query_tree_walker and query_tree_mutator were skipping the
windowClause of the query, without regard for the fact that the
startOffset and endOffset in a WindowClause node are expression trees
that need to be processed. This was an oversight in commit ec4be2ee6
from 2010 which added the expression fields; the main symptom is that
function parameters in window frame clauses don't work in inlined
functions.
Fix (as conservatively as possible since this needs to not break
existing out-of-tree callers) and add tests.
Backpatch all the way, since this has been broken since 9.0.
Per report from Alastair McKinley; fix by me with kibitzing and review
from Tom Lane.
Discussion: https://postgr.es/m/DB6PR0202MB2904E7FDDA9D81504D1E8C68E3800@DB6PR0202MB2904.eurprd02.prod.outlook.com
Diffstat (limited to 'src/backend/commands/async.c')
0 files changed, 0 insertions, 0 deletions