pgsql: Fix planning of SubLinks to ensure that Vars generated from
Log Message:
-----------
Fix planning of SubLinks to ensure that Vars generated from transformation of
a sublink's test expression have the correct vartypmod, rather than defaulting
to -1. There's at least one place where this is important because we're
expecting these Vars to be exactly equal() to those appearing in the subplan
itself. This is a pretty klugy solution --- it would likely be cleaner to
change Param nodes to include a typmod field --- but we can't do that in the
already-released 8.2 branch.
Per bug report from Hubert Fongarnand.
Modified Files:
--------------
pgsql/src/backend/optimizer/plan:
subselect.c (r1.112 -> r1.113)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/subselect.c.diff?r1=1.112&r2=1.113)
Tom Lane wrote:
Log Message:
-----------
Fix planning of SubLinks to ensure that Vars generated from transformation
of
a sublink's test expression have the correct vartypmod, rather than
defaulting
to -1. There's at least one place where this is important because we're
expecting these Vars to be exactly equal() to those appearing in the
subplan
itself. This is a pretty klugy solution --- it would likely be cleaner to
change Param nodes to include a typmod field --- but we can't do that in
the
already-released 8.2 branch.
Per bug report from Hubert Fongarnand.
I'm slightly confused by this commit message. Is this commit on HEAD a
temporary measure pending a cleaner fix, or is it the intended permanent
fix, notwithstanding the kludginess?
cheers
andrew
"Andrew Dunstan" <andrew@dunslane.net> writes:
Tom Lane wrote:
This is a pretty klugy solution --- it would likely be cleaner to
change Param nodes to include a typmod field --- but we can't do that in
the already-released 8.2 branch.
I'm slightly confused by this commit message. Is this commit on HEAD a
temporary measure pending a cleaner fix, or is it the intended permanent
fix, notwithstanding the kludginess?
I have a to-do item to look at the idea of adding typmod to Param, but
am not committing to do it yet. In the meantime I figured the bug should
get fixed.
regards, tom lane