mirror of
https://github.com/postgres/postgres.git
synced 2025-07-03 20:02:46 +03:00
Change Agg and Group nodes so that Vars contained in their targetlists
and quals have varno OUTER, rather than zero, to indicate a reference to an output of their lefttree subplan. This is consistent with the way that every other upper-level node type does it, and allows some simplifications in setrefs.c and EXPLAIN.
This commit is contained in:
@ -15,7 +15,7 @@
|
||||
* locate group boundaries.
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/executor/nodeGroup.c,v 1.68 2007/02/02 00:07:03 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/executor/nodeGroup.c,v 1.69 2007/02/22 23:44:24 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -72,9 +72,14 @@ ExecGroup(GroupState *node)
|
||||
node->grp_done = TRUE;
|
||||
return NULL;
|
||||
}
|
||||
/* Copy tuple, set up as input for qual test and projection */
|
||||
/* Copy tuple into firsttupleslot */
|
||||
ExecCopySlot(firsttupleslot, outerslot);
|
||||
econtext->ecxt_scantuple = firsttupleslot;
|
||||
|
||||
/*
|
||||
* Set it up as input for qual test and projection. The expressions
|
||||
* will access the input tuple as varno OUTER.
|
||||
*/
|
||||
econtext->ecxt_outertuple = firsttupleslot;
|
||||
|
||||
/*
|
||||
* Check the qual (HAVING clause); if the group does not match, ignore
|
||||
@ -126,7 +131,7 @@ ExecGroup(GroupState *node)
|
||||
*/
|
||||
/* Copy tuple, set up as input for qual test and projection */
|
||||
ExecCopySlot(firsttupleslot, outerslot);
|
||||
econtext->ecxt_scantuple = firsttupleslot;
|
||||
econtext->ecxt_outertuple = firsttupleslot;
|
||||
|
||||
/*
|
||||
* Check the qual (HAVING clause); if the group does not match, ignore
|
||||
|
Reference in New Issue
Block a user