Commit 4f807be2 authored by Bruce Momjian's avatar Bruce Momjian

Patch for ReScan of Group.

parent c1f1a2e0
...@@ -7,7 +7,7 @@ ...@@ -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 @@ ...@@ -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) ...@@ -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 @@ ...@@ -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, ...@@ -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 @@ ...@@ -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); ...@@ -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 */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment