]> granicus.if.org Git - postgresql/commit
Handle domains when checking for recursive inclusion of composite types.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 2 Jun 2011 22:37:57 +0000 (18:37 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 2 Jun 2011 22:37:57 +0000 (18:37 -0400)
commitaff97b1f4e3630069a370be663b847c777b58319
tree4c57371240a863cb9e1a5a83762334a108e8629c
parent680ea6a6df345218f655eaad2c25f98900487438
Handle domains when checking for recursive inclusion of composite types.

We need this now because we allow domains over arrays, and we'll probably
allow domains over composites pretty soon, which makes the problem even
more obvious.

Although domains over arrays also exist in previous versions, this does not
need to be back-patched, because the coding used in older versions
successfully "looked through" domains over arrays.  The problem is exposed
by not treating a domain as having a typelem.

Problem identified by Noah Misch, though I did not use his patch, since
it would require additional work to handle domains over composites that
way.  This approach is more future-proof.
src/backend/catalog/heap.c
src/test/regress/expected/alter_table.out
src/test/regress/sql/alter_table.sql