Fix determination of not-null constraint "locality" for inherited columns
It is possible to have a non-inherited not-null constraint on an
inherited column, but we were failing to preserve such constraints
during pg_upgrade where the source is 17 or older, because of a bug in
the pg_dump query for it. Oversight in commit 14e87ffa5c54. Fix that
query. In passing, touch-up a bogus nearby comment introduced by the
same commit.
In version 17, make the regression tests leave a table in this
situation, so that this scenario is tested in the cross-version upgrade
tests of 18 and up.
Author: Dilip Kumar <dilipbalaut@gmail.com>
Reported-by: Andrew Bille <andrewbille@gmail.com>
Bug: #19074
Backpatch-through: 18
Discussion: https://postgr.es/m/19074-ae2548458cf0195c@postgresql.org
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/615ff828e1cb8eaa2a987d4390c5c9970fc1a3e6
Modified Files
--------------
src/bin/pg_dump/pg_dump.c | 8 +++++---
src/test/regress/expected/constraints.out | 4 ++++
src/test/regress/sql/constraints.sql | 5 +++++
3 files changed, 14 insertions(+), 3 deletions(-)