]> granicus.if.org Git - postgresql/commit
Instead of supposing (wrongly, in the general case) that the rowtype
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 11 Dec 2004 23:26:51 +0000 (23:26 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 11 Dec 2004 23:26:51 +0000 (23:26 +0000)
commit12b1b5d837b5ce1c07ee3535e74e4cc3039063d6
tree1ef0ecc2ccfba9a8a33f0b20ef31533b499cbdba
parentfd536dd257b12a8b1abf8d744d8a3688e1db126b
Instead of supposing (wrongly, in the general case) that the rowtype
of an inheritance child table is binary-compatible with the rowtype of
its parent, invent an expression node type that does the conversion
correctly.  Fixes the new bug exhibited by Kris Shannon as well as a
lot of old bugs that would only show up when using multiple inheritance
or after altering the parent table.
15 files changed:
src/backend/executor/execQual.c
src/backend/nodes/copyfuncs.c
src/backend/nodes/equalfuncs.c
src/backend/nodes/outfuncs.c
src/backend/nodes/readfuncs.c
src/backend/optimizer/prep/prepjointree.c
src/backend/optimizer/prep/prepunion.c
src/backend/optimizer/util/clauses.c
src/backend/parser/parse_coerce.c
src/backend/parser/parse_expr.c
src/backend/utils/adt/ruleutils.c
src/include/nodes/execnodes.h
src/include/nodes/nodes.h
src/include/nodes/primnodes.h
src/pl/plpgsql/src/pl_exec.c