]> granicus.if.org Git - postgresql/commit
Fix another bug in merging of inherited CHECK constraints.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 13 Oct 2016 21:05:15 +0000 (17:05 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 13 Oct 2016 21:05:15 +0000 (17:05 -0400)
commit3217ac3a98673b1520d774f2a61fffc237874e47
tree3d5f8f2b8a8a4a24a3f80f7f6b2c8c0a6b6df828
parent43d17489d112e19bb51ae418bd3d63cb062afd62
Fix another bug in merging of inherited CHECK constraints.

It's not good for an inherited child constraint to be marked connoinherit;
that would result in the constraint not propagating to grandchild tables,
if any are created later.  The code mostly prevented this from happening
but there was one case that was missed.

This is somewhat related to commit e55a946a8, which also tightened checks
on constraint merging.  Hence, back-patch to 9.2 like that one.  This isn't
so much because there's a concrete feature-related reason to stop there,
as to avoid having more distinct behaviors than we have to in this area.

Amit Langote

Discussion: <b28ee774-7009-313d-dd55-5bdd81242c41@lab.ntt.co.jp>
src/backend/catalog/heap.c
src/test/regress/expected/inherit.out
src/test/regress/sql/inherit.sql