pgsql: Fix a thinko in my patch of a couple months ago for bug #3116: it

Lists: pgsql-committers
From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix a thinko in my patch of a couple months ago for bug #3116: it
Date: 2007-05-01 18:54:02
Message-ID: 20070501185402.5224A9FB4FE@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-committers

Log Message:
-----------
Fix a thinko in my patch of a couple months ago for bug #3116: it did the
wrong thing when inlining polymorphic SQL functions, because it was using the
function's declared return type where it should have used the actual result
type of the current call. In 8.1 and 8.2 this causes obvious failures even if
you don't have assertions turned on; in 8.0 and 7.4 it would only be a problem
if the inlined expression were used as an input to a function that did
run-time type determination on its inputs. Add a regression test, since this
is evidently an under-tested area.

Tags:
----
REL8_2_STABLE

Modified Files:
--------------
pgsql/src/backend/optimizer/util:
clauses.c (r1.223.2.2 -> r1.223.2.3)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/clauses.c.diff?r1=1.223.2.2&r2=1.223.2.3)
pgsql/src/test/regress/expected:
polymorphism.out (r1.9 -> r1.9.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/polymorphism.out.diff?r1=1.9&r2=1.9.2.1)
pgsql/src/test/regress/sql:
polymorphism.sql (r1.3 -> r1.3.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/polymorphism.sql.diff?r1=1.3&r2=1.3.2.1)