Обсуждение: 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