aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2001-09-21 04:06:04 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2001-09-21 04:06:04 +0000
commit6f33c179b9675d395c6b97c806068279780a7c2f (patch)
tree041ad5ab7df0b90d9d6f74a0c9652f76aace1159
parentc969fed7ecd54be6aca27e68a58efb57b2753ba2 (diff)
downloadpostgresql-6f33c179b9675d395c6b97c806068279780a7c2f.tar.gz
postgresql-6f33c179b9675d395c6b97c806068279780a7c2f.zip
Produce slightly saner-looking EXPLAIN output for a Result node.
-rw-r--r--src/backend/optimizer/plan/createplan.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c
index 9a32ae7a1b9..8756fcc0205 100644
--- a/src/backend/optimizer/plan/createplan.c
+++ b/src/backend/optimizer/plan/createplan.c
@@ -10,7 +10,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/createplan.c,v 1.108 2001/08/21 16:36:03 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/createplan.c,v 1.109 2001/09/21 04:06:04 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1827,7 +1827,16 @@ make_result(List *tlist,
#ifdef NOT_USED
tlist = generate_fjoin(tlist);
#endif
- copy_plan_costsize(plan, subplan);
+ if (subplan)
+ copy_plan_costsize(plan, subplan);
+ else
+ {
+ plan->startup_cost = 0;
+ plan->total_cost = cpu_tuple_cost;
+ plan->plan_rows = 1; /* wrong if we have a set-valued function? */
+ plan->plan_width = 0; /* XXX try to be smarter? */
+ }
+
plan->state = (EState *) NULL;
plan->targetlist = tlist;
plan->qual = NIL;