diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-03-09 02:19:13 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-03-09 02:19:13 +0000 |
commit | aa60eecc37c1bbb934079bf5234fba3e3879873d (patch) | |
tree | dbfca43657ff1e4cc3da2d4f907c73d289cfe213 /src/backend/executor/execQual.c | |
parent | 05a966fca4a828413da9d3a9d9492d111e176780 (diff) |
Revise tuplestore and nodeMaterial so that we don't have to read the
entire contents of the subplan into the tuplestore before we can return
any tuples. Instead, the tuplestore holds what we've already read, and
we fetch additional rows from the subplan as needed. Random access to
the previously-read rows works with the tuplestore, and doesn't affect
the state of the partially-read subplan. This is a step towards fixing
the problems with cursors over complex queries --- we don't want to
stick in Materialize nodes if they'll prevent quick startup for a cursor.
Diffstat (limited to 'src/backend/executor/execQual.c')
-rw-r--r-- | src/backend/executor/execQual.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/src/backend/executor/execQual.c b/src/backend/executor/execQual.c index 968617c39a9..a1c1fdd8ad3 100644 --- a/src/backend/executor/execQual.c +++ b/src/backend/executor/execQual.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/executor/execQual.c,v 1.125 2003/02/16 02:30:37 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/executor/execQual.c,v 1.126 2003/03/09 02:19:13 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1107,13 +1107,6 @@ ExecMakeTableFunctionResult(ExprState *funcexpr, first_time = false; } - /* If we have a locally-created tupstore, close it up */ - if (tupstore) - { - MemoryContextSwitchTo(econtext->ecxt_per_query_memory); - tuplestore_donestoring(tupstore); - } - MemoryContextSwitchTo(callerContext); /* The returned pointers are those in rsinfo */ |