Patch for ReScan of Group.
This commit is contained in:
parent
c1f1a2e03a
commit
4f807be2ad
src
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.22 1998/07/15 22:16:17 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.23 1998/07/16 01:49:18 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -42,9 +42,11 @@
|
|||||||
#include "executor/nodeHashjoin.h"
|
#include "executor/nodeHashjoin.h"
|
||||||
#include "executor/nodeHash.h"
|
#include "executor/nodeHash.h"
|
||||||
#include "executor/nodeAgg.h"
|
#include "executor/nodeAgg.h"
|
||||||
|
#include "executor/nodeGroup.h"
|
||||||
#include "executor/nodeResult.h"
|
#include "executor/nodeResult.h"
|
||||||
#include "executor/nodeUnique.h"
|
#include "executor/nodeUnique.h"
|
||||||
#include "executor/nodeMergejoin.h"
|
#include "executor/nodeMergejoin.h"
|
||||||
|
#include "executor/nodeAppend.h"
|
||||||
#include "executor/nodeSubplan.h"
|
#include "executor/nodeSubplan.h"
|
||||||
#include "executor/execdebug.h"
|
#include "executor/execdebug.h"
|
||||||
#include "optimizer/internal.h" /* for _TEMP_RELATION_ID_ */
|
#include "optimizer/internal.h" /* for _TEMP_RELATION_ID_ */
|
||||||
@ -353,6 +355,10 @@ ExecReScan(Plan *node, ExprContext *exprCtxt, Plan *parent)
|
|||||||
ExecReScanAgg((Agg *) node, exprCtxt, parent);
|
ExecReScanAgg((Agg *) node, exprCtxt, parent);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case T_Group:
|
||||||
|
ExecReScanGroup((Group *) node, exprCtxt, parent);
|
||||||
|
break;
|
||||||
|
|
||||||
case T_Result:
|
case T_Result:
|
||||||
ExecReScanResult((Result *) node, exprCtxt, parent);
|
ExecReScanResult((Result *) node, exprCtxt, parent);
|
||||||
break;
|
break;
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
* columns. (ie. tuples from the same group are consecutive)
|
* columns. (ie. tuples from the same group are consecutive)
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.19 1998/06/15 19:28:21 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.20 1998/07/16 01:49:18 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -417,3 +417,12 @@ sameGroup(HeapTuple oldtuple,
|
|||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ExecReScanGroup(Group *node, ExprContext *exprCtxt, Plan *parent)
|
||||||
|
{
|
||||||
|
GroupState *grpstate = node->grpstate;
|
||||||
|
|
||||||
|
grpstate->grp_useFirstTuple = FALSE;
|
||||||
|
grpstate->grp_done = FALSE;
|
||||||
|
}
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright (c) 1994, Regents of the University of California
|
* Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: nodeGroup.h,v 1.5 1997/11/26 01:12:46 momjian Exp $
|
* $Id: nodeGroup.h,v 1.6 1998/07/16 01:49:19 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -21,5 +21,6 @@ extern TupleTableSlot *ExecGroup(Group *node);
|
|||||||
extern bool ExecInitGroup(Group *node, EState *estate, Plan *parent);
|
extern bool ExecInitGroup(Group *node, EState *estate, Plan *parent);
|
||||||
extern int ExecCountSlotsGroup(Group *node);
|
extern int ExecCountSlotsGroup(Group *node);
|
||||||
extern void ExecEndGroup(Group *node);
|
extern void ExecEndGroup(Group *node);
|
||||||
|
extern void ExecReScanGroup(Group *node, ExprContext *exprCtxt, Plan *parent);
|
||||||
|
|
||||||
#endif /* NODEGROUP_H */
|
#endif /* NODEGROUP_H */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user