Skip site navigation (1) Skip section navigation (2)

BUG #14629: ALTER TABLE VALIDATE CONSTRAINTS does not obey NO INHERIT clause

From: buschmann(at)nidsa(dot)net
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #14629: ALTER TABLE VALIDATE CONSTRAINTS does not obey NO INHERIT clause
Date: 2017-04-21 18:40:12
Message-ID: 20170421184012.24362.19@wrigleys.postgresql.org (view raw, whole thread or download thread mbox)
Thread:
Lists: pgsql-bugspgsql-hackers
The following bug has been logged on the website:

Bug reference:      14629
Logged by:          Hans Buschmann
Email address:      buschmann(at)nidsa(dot)net
PostgreSQL version: 9.6.2
Operating system:   Windows x64
Description:        


Given these both tables (orders_archiv inherits orders) on 9.6.2 Windows
x64
(cut/paste from psql)

xxxdb=# \d orders_archiv;
...
Check constraints:
    "ck_or_old" CHECK (or_season < 24) NO INHERIT
Inherits: orders


xxxdb=# \d orders
...
Check constraints:
    "ck_or_new" CHECK (or_season >= 24) NO INHERIT NOT VALID
Triggers:
    tr_orders_insert BEFORE INSERT ON orders FOR EACH ROW WHEN
(new.or_season < 24) EXECUTE PROCEDURE fn_orders_insert()
Number of child tables: 1 (Use \d+ to list them.)


When applying these commands to the parent table, the following errors are
returned:

xxxdb=# alter table orders validate constraint ck_or_new;
ERROR:  constraint "ck_or_new" of relation "orders_archiv" does not exist


xxxdb=# alter table only orders validate constraint ck_or_new;
ERROR:  constraint must be validated on child tables too

Background:
From our original partitioning of quite a lot of tables according to
xx_season columns (a season is a half year period) I dropped and recreated
the check constraintsin a not valid state.

At the end of the script to move the data from 2 seasons into the archiv
tables I tried to reenable the check constraints and encountered those two
errors.

It seems that I can circumvent these errors by recreating the constraints
without the not valid clause.

Do I miss something here ?

Hans Buschmann





Responses

pgsql-hackers by date

Next:From: Josh BerkusDate: 2017-04-21 18:47:46
Subject: Missing feature in Phrase Search?
Previous:From: Andres FreundDate: 2017-04-21 18:40:06
Subject: Re: Unportable implementation of background worker start

pgsql-bugs by date

Next:From: David G. JohnstonDate: 2017-04-22 17:32:59
Subject: Re: BUG #14626: array_agg( anyarray ) unexpected error with multi-valued single-dimension array
Previous:From: Irina MilevaDate: 2017-04-21 17:44:01
Subject: Re: ON CONFLICT issie detected

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group