Re: foreign key take too much time to check

From: Mark Volpe <volpe(dot)mark(at)epamail(dot)epa(dot)gov>
To: Jie Liang <jliang(at)ipinc(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: foreign key take too much time to check
Date: 2000-08-07 19:57:30
Message-ID: 398F14AA.675553E3@epamail.epa.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Try creating the tables without the constraint first,
then populate them, and then add the foreign key constaint
as the last step using ALTER TABLE/ADD CONSTRAINT.

Mark

Jie Liang wrote:
>
> Hi, there,
>
> I want add a constraint to my tables:
> I have 2 tables:
> 1. Table_A(id int 4 primary key, item text, ......),
> 2. Table_B(id int4, cid int4, constraint b_fk foreign key (id)
> refereneces Table_A(id)
> on delete cascade on update cascade);
> Table_A has ~900,000 rows,
> Table_B has ~1,200,000 rows.
> I tried serveral ways to generate the b_fk
> 1. alter table add constraint b_fk foreign key (id) refereneces
> Table_A(id)
> on delete cascade on update cascade,
> 2. pg_dump -d -t Table_B -f B dbname, then psql dbname < B
> even before that , I create an index for id of Table_B, and vacuum table
> Table_A and Table_B,
>
> insert (check) speed is very slow, ~100 rows per minute, for my table
> has ~1.2M rows will
> take more than 200hours, I wonder to compare 2 integers why takes so
> long, if no b_fk , the Table_B
> can be reload in 5 minutes...
>
> Is anybody know how reslove this problem? I 'll appreciate.
>
> --
> Jie LIANG
>
> Internet Products Inc.
>
> 10350 Science Center Drive
> Suite 100, San Diego, CA 92121
> Office:(858)320-4873
>
> jliang(at)ipinc(dot)com
> www.ipinc.com

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Jie Liang 2000-08-07 20:00:04 PL/pgSQL
Previous Message Jie Liang 2000-08-07 19:39:12 foreign key take too much time to check