projects
/
users
/
simon
/
postgres.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0bbb86e
)
Put back copyObject() call I removed in a fit of brain fade. This one
author
Tom Lane
<tgl@sss.pgh.pa.us>
Sun, 25 Feb 2007 17:44:01 +0000
(17:44 +0000)
committer
Tom Lane
<tgl@sss.pgh.pa.us>
Sun, 25 Feb 2007 17:44:01 +0000
(17:44 +0000)
is still needed despite cleanups in setrefs.c, because the point is to
let the inserted Result node compute a different tlist than its input
node does. Per example from Jeremy Drake.
src/backend/optimizer/plan/createplan.c
patch
|
blob
|
blame
|
history
diff --git
a/src/backend/optimizer/plan/createplan.c
b/src/backend/optimizer/plan/createplan.c
index ebbeeec0b419a6866bf9d0c44e51fb6ef09a9d49..521aeee48602a888ffeedc679db788d6ab30f10b 100644
(file)
--- a/
src/backend/optimizer/plan/createplan.c
+++ b/
src/backend/optimizer/plan/createplan.c
@@
-2740,7
+2740,11
@@
make_sort_from_pathkeys(PlannerInfo *root, Plan *lefttree, List *pathkeys)
* Do we need to insert a Result node?
*/
if (!is_projection_capable_plan(lefttree))
+ {
+ /* copy needed so we don't modify input's tlist below */
+ tlist = copyObject(tlist);
lefttree = (Plan *) make_result(root, tlist, NULL, lefttree);
+ }
/*
* Add resjunk entry to input's tlist