aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/plan/planner.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2003-02-04 00:50:01 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2003-02-04 00:50:01 +0000
commit2d1f94054259d3237e678d89ca9e57305a6a3997 (patch)
tree40120fa68990f0a2714bb8daa5f944aa3ee08dd8 /src/backend/optimizer/plan/planner.c
parent85caf1784a318afdd3c4ba66ffd23c0d0af99cd6 (diff)
downloadpostgresql-2d1f94054259d3237e678d89ca9e57305a6a3997.tar.gz
postgresql-2d1f94054259d3237e678d89ca9e57305a6a3997.zip
Minor code cleanup: remove no-longer-useful pull_subplans() function,
and convert pull_agg_clause() into count_agg_clause(), which is a more efficient way of doing what it's really being used for.
Diffstat (limited to 'src/backend/optimizer/plan/planner.c')
-rw-r--r--src/backend/optimizer/plan/planner.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c
index f01b9feffe2..ad68253109d 100644
--- a/src/backend/optimizer/plan/planner.c
+++ b/src/backend/optimizer/plan/planner.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.143 2003/02/03 15:07:07 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.144 2003/02/04 00:50:00 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -623,11 +623,14 @@ grouping_planner(Query *parse, double tuple_fraction)
* Will need actual number of aggregates for estimating costs.
* Also, it's possible that optimization has eliminated all
* aggregates, and we may as well check for that here.
+ *
+ * Note: we do not attempt to detect duplicate aggregates here;
+ * a somewhat-overestimated count is okay for our present purposes.
*/
if (parse->hasAggs)
{
- numAggs = length(pull_agg_clause((Node *) tlist)) +
- length(pull_agg_clause(parse->havingQual));
+ numAggs = count_agg_clause((Node *) tlist) +
+ count_agg_clause(parse->havingQual);
if (numAggs == 0)
parse->hasAggs = false;
}