From: | PFC <lists(at)boutiquenumerique(dot)com> |
---|---|
To: | "Richard van den Berg" <richard(dot)vandenberg(at)trust-factory(dot)com>, pgsql-performance(at)postgresql(dot)org |
Subject: | Re: Foreign key slows down copy/insert |
Date: | 2005-04-14 17:22:19 |
Message-ID: | op.so8fvhlwth1vuj@localhost |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
> I have a table A with an int column ID that references table B column
> ID. Table B has about 150k rows, and has an index on B.ID. When trying
> to copy 1 million rows into A, I get the following \timings:
You're using 7.4.5. It's possible that you have a type mismatch in your
foreign keys which prevents use of the index on B.
First of all, be really sure it's THAT foreign key, ie. do your COPY with
only ONE foreign key at a time if you have several, and see which one is
the killer.
Then, supposing it's the column in A which REFERENCE's B(id) :
SELECT id FROM A LIMIT 1;
(check type)
SELECT id FROM B LIMIT 1;
(check type)
EXPLAIN ANALYZE the following :
SELECT * FROM B WHERE id = (SELECT id FROM A LIMIT 1);
It should use the index. Does it ?
From | Date | Subject | |
---|---|---|---|
Next Message | elein | 2005-04-14 17:39:03 | Re: [Fwd: Re: Functionscan estimates] |
Previous Message | Alex Turner | 2005-04-14 17:13:41 | Re: Intel SRCS16 SATA raid? |