]> granicus.if.org Git - postgresql/commit
Fix getTypeIOParam to support type record[].
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 1 Dec 2011 17:44:16 +0000 (12:44 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 1 Dec 2011 17:44:16 +0000 (12:44 -0500)
commit65d9aedb1b0e2c160cee3ef6cddb284b092f542e
tree32e6a59edfcfdf81c2912b181a448bc714a04a2d
parent1be6f9379287ecbbe6ab47636af7d41c7ae279ea
Fix getTypeIOParam to support type record[].

Since record[] uses array_in, it needs to have its element type passed
as typioparam.  In HEAD and 9.1, this fix essentially reverts commit
9bc933b2125a5358722490acbc50889887bf7680, which was a hack that is no
longer needed since domains don't set their typelem anymore.  Before
that, adjust the logic so that only domains are excluded from being
treated like arrays, rather than assuming that only base types should
be included.  Add a regression test to demonstrate the need for this.
Per report from Maxim Boguk.

Back-patch to 8.4, where type record[] was added.
src/backend/utils/cache/lsyscache.c
src/test/regress/expected/polymorphism.out
src/test/regress/sql/polymorphism.sql