I have an issue with pg_dump and inherits with pg 8.1.3 and 8.1.4

if I run the following SQL
create table t (a text check (a = '*'));
create table s () inherits (t);
alter table s drop constraint t_a_check;
alter table s add constraint a_check check (a='s');

I get the following
     Table "public.t"
 Column | Type | Modifiers 
--------+------+-----------
 a      | text | 
Check constraints:
    "t_a_check" CHECK (a = '*'::text)

     Table "public.s"
 Column | Type | Modifiers 
--------+------+-----------
 a      | text | 
Check constraints:
    "a_check" CHECK (a = 's'::text)
Inherits: t

and then create a new database and run
pg_dump old_db |psql new_db

I get the following
     Table "public.t"
 Column | Type | Modifiers 
--------+------+-----------
 a      | text | 
Check constraints:
    "t_a_check" CHECK (a = '*'::text)

     Table "public.s"
 Column | Type | Modifiers 
--------+------+-----------
 a      | text | 
Check constraints:
    "a_check" CHECK (a = 's'::text)
    "t_a_check" CHECK (a = '*'::text)
Inherits: t

The check constraints on table s are not like the original, I have an extra 
t_a_check constraint.  Is this correct?

Jim

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to