Fix another bug in merging of inherited CHECK constraints.
authorTom Lane
Thu, 13 Oct 2016 21:05:15 +0000 (17:05 -0400)
committerTom Lane
Thu, 13 Oct 2016 21:05:15 +0000 (17:05 -0400)
commitf2024d59ae7f20b8d51eaf29e543c50ec88488f0
tree60d104a1ef5f23a3c34fca32d9e3262b0f295826
parent6d3cbbf5954250638ea5837bf514a6d392f2329e
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