Re: FK check will use index on referring table?

Поиск
Список
Период
Сортировка
От Stephen Frost
Тема Re: FK check will use index on referring table?
Дата
Msg-id 20080725010626.GC16005@tamriel.snowman.net
обсуждение исходный текст
Ответ на FK check will use index on referring table?  ("John D. Burger" <john@mitre.org>)
Ответы Re: FK check will use index on referring table?  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: FK check will use index on referring table?  ("Scott Marlowe" <scott.marlowe@gmail.com>)
Список pgsql-general
* John D. Burger (john@mitre.org) wrote:
> My understanding is that PG will use an index on the referring side of a
> foreign key for FK checks.  How can I tell whether it's doing that?

It should, when it makes sense, yes.  Having the actual schema
definitions would help in debugging this, of course.

> EXPLAIN ANALYZE just shows something like this:
>
> => explain analyze delete from segments where segmentid = 24305259;

What does:

explain analyze
delete from tokenizedSegments
where segmentId = 24305259;

look like?

If more than a few percent of the tokenizedSegments table has a
segmentId of 24305259 then PG may rightly be scanning the whole table
sequantially because going through it randomly with an index would be
slower.  There's a few options which can tune those parameters in the
planner, of course, but you might consider doing a test
'set enable_seqscan = false;' first, if it's indeed doing one, to see
what the difference really is.

    Thanks,

        Stephen

Вложения

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

Предыдущее
От: Aarni Ruuhimäki
Дата:
Сообщение: Re: php + postgresql
Следующее
От: Tom Lane
Дата:
Сообщение: Re: FK check will use index on referring table?