Re: Foreign key slows down copy/insert

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 ?

In response to

Responses

Browse pgsql-performance by date

  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?