Re: Adding a foreign key constraint is extremely slow

Поиск
Список
Период
Сортировка
От Bart Samwel
Тема Re: Adding a foreign key constraint is extremely slow
Дата
Msg-id 3E81DEA3.7060305@liacs.nl
обсуждение исходный текст
Ответ на Re: Adding a foreign key constraint is extremely slow  (Greg Stark <gsstark@mit.edu>)
Список pgsql-performance
Greg Stark wrote:
> bsamwel@xs4all.nl writes:
>
>
>>alter table triples add foreign key(id1) references wwwlog(id);
>>
>>PostgreSQL starts doing heavy work for at least one and a half hour, and I
>>broke it off at that. It is not possible to "explain" a statement like
>>this! Probably what it does is that it will check the foreign key
>>constraint for every field in the table. This will make it completely
>>impossible to load my data, because:
>>
>>(2) I cannot set the foreign key constraints AFTER loading the 0.9 million
>>records because I've got no clue at all how long this operation is going
>>to take.
>
>
> Try adding an index on wwwlog(id) so that it can check the constraint without
> doing a full table scan for each value being checked.

AFAIK, because wwwlog(id) is the primary key, this index already exists
implicitly.  Still, 0.9 million separate index lookups are too slow for
my purposes, if for example it takes something as low as 1 ms per lookup
it will still take 900 seconds (= 15 minutes) to complete. As the
complete adding of the foreign key constraint took about an hour, that
would suggest an average of 4 ms per lookup, which suggests that the
index is, in fact, present. :)

Anyway, I've actually waited for the operation to complete. The problem
is out of my way for now.

Bart


--

Leiden Institute of Advanced Computer Science (http://www.liacs.nl)
E-mail: bsamwel@liacs.nl    Telephone: +31-71-5277037
Homepage: http://www.liacs.nl/~bsamwel
Opinions stated in this e-mail are mine and not necessarily my employer's.


В списке pgsql-performance по дате отправления:

Предыдущее
От: Greg Stark
Дата:
Сообщение: Re: Adding a foreign key constraint is extremely slow
Следующее
От: Robert D Oden
Дата:
Сообщение: max_fsm settings