From 6f33c179b9675d395c6b97c806068279780a7c2f Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri, 21 Sep 2001 04:06:04 +0000
Subject: [PATCH] Produce slightly saner-looking EXPLAIN output for a Result
 node.

---
 src/backend/optimizer/plan/createplan.c | 13 +++++++++++--
 1 file 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;
-- 
GitLab