mirror of
https://github.com/postgres/postgres.git
synced 2025-07-12 21:01:52 +03:00
Rename ResolveNew() to ReplaceVarsFromTargetList(), and tweak its API.
This function currently lacks the option to throw error if the provided targetlist doesn't have any matching entry for a Var to be replaced. Two of the four existing call sites would be better off with an error, as would the usage in the pending auto-updatable-views patch, so it seems past time to extend the API to support that. To do so, replace the "event" parameter (historically of type CmdType, though it was declared plain int) with a special-purpose enum type. It's unclear whether this function might be called by third-party code. Since many C compilers wouldn't warn about a call site continuing to use the old calling convention, rename the function to forcibly break any such code that hasn't been updated. The old name was none too well chosen anyhow.
This commit is contained in:
@ -1835,10 +1835,10 @@ subquery_push_qual(Query *subquery, RangeTblEntry *rte, Index rti, Node *qual)
|
||||
* This step also ensures that when we are pushing into a setop tree,
|
||||
* each component query gets its own copy of the qual.
|
||||
*/
|
||||
qual = ResolveNew(qual, rti, 0, rte,
|
||||
subquery->targetList,
|
||||
CMD_SELECT, 0,
|
||||
&subquery->hasSubLinks);
|
||||
qual = ReplaceVarsFromTargetList(qual, rti, 0, rte,
|
||||
subquery->targetList,
|
||||
REPLACEVARS_REPORT_ERROR, 0,
|
||||
&subquery->hasSubLinks);
|
||||
|
||||
/*
|
||||
* Now attach the qual to the proper place: normally WHERE, but if the
|
||||
|
Reference in New Issue
Block a user