Обсуждение: pgsql: Fix planning of SubLinks to ensure that Vars generated from
pgsql: Fix planning of SubLinks to ensure that Vars generated from
От
tgl@postgresql.org (Tom Lane)
Дата:
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