summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTom Lane2006-02-28 05:48:44 +0000
committerTom Lane2006-02-28 05:48:44 +0000
commitd2c555ee538f34be7aff744b994df4d2369a9140 (patch)
tree3a1bd752d04ff238cc5ff71dc081097f1710919c /src/include
parent2c0ef9777cce8f97dd01073d962e6aa31722b5ad (diff)
Teach nodeSort and nodeMaterial to optimize out unnecessary overhead
when the passed-down eflags indicate they can. Simon Riggs and Tom Lane
Diffstat (limited to 'src/include')
-rw-r--r--src/include/nodes/execnodes.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h
index d07dc57297c..f277672a1c4 100644
--- a/src/include/nodes/execnodes.h
+++ b/src/include/nodes/execnodes.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/nodes/execnodes.h,v 1.147 2005/12/28 01:30:01 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/nodes/execnodes.h,v 1.148 2006/02/28 05:48:44 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1185,8 +1185,9 @@ typedef struct HashJoinState
typedef struct MaterialState
{
ScanState ss; /* its first field is NodeTag */
- void *tuplestorestate; /* private state of tuplestore.c */
+ bool randomAccess; /* need random access to subplan output? */
bool eof_underlying; /* reached end of underlying plan? */
+ void *tuplestorestate; /* private state of tuplestore.c */
} MaterialState;
/* ----------------
@@ -1196,6 +1197,7 @@ typedef struct MaterialState
typedef struct SortState
{
ScanState ss; /* its first field is NodeTag */
+ bool randomAccess; /* need random access to sort output? */
bool sort_Done; /* sort completed yet? */
void *tuplesortstate; /* private state of tuplesort.c */
} SortState;