Produce slightly saner-looking EXPLAIN output for a Result node.
authorTom Lane
Fri, 21 Sep 2001 04:06:04 +0000 (04:06 +0000)
committerTom Lane
Fri, 21 Sep 2001 04:06:04 +0000 (04:06 +0000)
src/backend/optimizer/plan/createplan.c

index 9a32ae7a1b948125cdbd9a5883e286dad244b4ec..8756fcc020563e5dfeca5a94cfefb35fbe929ada 100644 (file)
@@ -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;