summaryrefslogtreecommitdiff
path: root/src/include/optimizer
diff options
context:
space:
mode:
authorTom Lane2003-02-03 15:07:08 +0000
committerTom Lane2003-02-03 15:07:08 +0000
commit4cff59d8d540c441fb0c22dfaa517bc25aa5f794 (patch)
tree88b4c216d219582904d3d9d6a236bb9468fe148c /src/include/optimizer
parent0d3e36b6687ae601551fb8047c10a68f2d6fb565 (diff)
Tweak planner and executor to avoid doing ExecProject() in table scan
nodes where it's not really necessary. In many cases where the scan node is not the topmost plan node (eg, joins, aggregation), it's possible to just return the table tuple directly instead of generating an intermediate projection tuple. In preliminary testing, this reduced the CPU time needed for 'SELECT COUNT(*) FROM foo' by about 10%.
Diffstat (limited to 'src/include/optimizer')
-rw-r--r--src/include/optimizer/plancat.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/include/optimizer/plancat.h b/src/include/optimizer/plancat.h
index 255d196d7d7..c6b18ab0da9 100644
--- a/src/include/optimizer/plancat.h
+++ b/src/include/optimizer/plancat.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: plancat.h,v 1.28 2003/01/28 22:13:41 tgl Exp $
+ * $Id: plancat.h,v 1.29 2003/02/03 15:07:08 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -17,10 +17,7 @@
#include "nodes/relation.h"
-extern void get_relation_info(Oid relationObjectId,
- bool *hasindex, long *pages, double *tuples);
-
-extern List *find_secondary_indexes(Oid relationObjectId);
+extern void get_relation_info(Oid relationObjectId, RelOptInfo *rel);
extern List *find_inheritance_children(Oid inhparent);