Re: BUG #12946: pg_dump/pg_restore not restore data for inherit tables

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: degtyaryov(at)gmail(dot)com
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #12946: pg_dump/pg_restore not restore data for inherit tables
Date: 2015-04-02 13:49:50
Message-ID: 8169.1427982590@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

degtyaryov(at)gmail(dot)com writes:
> $ psql -U test -d test_inherits
> test_inherits=> create table t1(a integer not null, b integer);
> CREATE TABLE
> test_inherits=> create table t2(a integer, b integer) inherits (t1);
> CREATE TABLE
> test_inherits=> insert into t1(a,b) values(null,1);
> ERROR: null value in column "a" violates not-null constraint
> DETAIL: Failing row contains (null, 1).
> test_inherits=> insert into t2(a,b) values(null,1);
> INSERT 0 1
> test_inherits=> \q

[ scratches head... ] When I do that, it refuses to insert into t2
either:

regression=# create table t1(a integer not null, b integer);
CREATE TABLE
regression=# create table t2(a integer, b integer) inherits (t1);
NOTICE: merging column "a" with inherited definition
NOTICE: merging column "b" with inherited definition
CREATE TABLE
regression=# insert into t1(a,b) values(null,1);
ERROR: null value in column "a" violates not-null constraint
DETAIL: Failing row contains (null, 1).
regression=# insert into t2(a,b) values(null,1);
ERROR: null value in column "a" violates not-null constraint
DETAIL: Failing row contains (null, 1).

This is the behavior I would expect, and I see it in all active
branches. Have you modified the code around column inheritance?

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Дмитрий Дегтярёв 2015-04-02 14:54:28 Re: BUG #12946: pg_dump/pg_restore not restore data for inherit tables
Previous Message degtyaryov 2015-04-02 12:36:44 BUG #12946: pg_dump/pg_restore not restore data for inherit tables