Re: BUG #16386: drop contraint in inherited table is missing in pg_dump backup

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Euler Taveira <euler(dot)taveira(at)2ndquadrant(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org, szittya314(at)gmail(dot)com
Subject: Re: BUG #16386: drop contraint in inherited table is missing in pg_dump backup
Date: 2020-04-24 15:28:39
Message-ID: 20200424152839.GA28038@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 2020-Apr-24, Euler Taveira wrote:

> On Fri, 24 Apr 2020 at 07:09, PG Bug reporting form <noreply(at)postgresql(dot)org>
> wrote:
>
> > create table b (aaa int primary key,bb date );
> > create table A (id int primary key) inherits (B);
> > alter table a alter column aaa drop not null;
> >
> > after i made pg_dump and pg_restore the not null contraint isexist on table
> > a;
> >
> It does not make sense to exclude a not null constraint on an inherited
> table because column "aaa" can be null in table "a" but a SELECT in table
> "b" will return a NULL for a primary key (ugh). It is just one of the ways
> to shoot yourself in the foot. If you check CREATE TABLE synopsis, there
> isn't NO INHERIT for not null constraints. Maybe it is worth adding a note
> in CREATE TABLE.

I agree with your analysis, but in that case we should make the DROP NOT
NULL throw an error instead of proceeding.

--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Eudald Valcàrcel Lacasa 2020-04-24 16:03:42 Queries getting older values (autocommit enabled)
Previous Message Euler Taveira 2020-04-24 15:13:01 Re: BUG #16386: drop contraint in inherited table is missing in pg_dump backup