Re: select slows from 3 seconds to 30 seconds

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: select slows from 3 seconds to 30 seconds
Дата
Msg-id 12822.1178326627@sss.pgh.pa.us
обсуждение исходный текст
Ответ на select slows from 3 seconds to 30 seconds  (Gary Stainburn <gary.stainburn@ringways.co.uk>)
Ответы Re: select slows from 3 seconds to 30 seconds  (Gary Stainburn <gary.stainburn@ringways.co.uk>)
Список pgsql-sql
Gary Stainburn <gary.stainburn@ringways.co.uk> writes:
> I have the query below which when run takes approx 3 seconds.  However when I
> add the condition 'and w_ws_id = 10' onto the end changes to 30+ seconds.
> Can anyone see why? I've included the explain for the long select.

You really ought to provide EXPLAIN ANALYZE output for both versions if
you want intelligent commentary --- otherwise we're just guessing.

But I would guess the problem is that the planner is way off about the
number of rows satisfying the joint condition --- it thinks two:

>                            ->  Index Scan using walon_hide_index on walon  (cost=0.00..85.04 rows=2 width=140)
>                                  Index Cond: (w_hide = 0)
>                                  Filter: (w_ws_id = 10)

This plan is good if there really are only a couple rows, but degrades
quickly if there are many...
        regards, tom lane


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

Предыдущее
От: Richard Broersma Jr
Дата:
Сообщение: Re: Insert into VIEW using RULE. Not possible to use nextval()?
Следующее
От: "Aaron Bono"
Дата:
Сообщение: Sequence vs. Index Scan