Re: Trying to track down weird query stalls

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: Trying to track down weird query stalls
Дата
Msg-id 20090330203939.GF23023@alvh.no-ip.org
обсуждение исходный текст
Ответ на Re: Trying to track down weird query stalls  (dan@sidhe.org)
Ответы Re: Trying to track down weird query stalls  (dan@sidhe.org)
Список pgsql-performance
dan@sidhe.org escribió:

> where libinstance.libdate <= 1238445044
>    and libinstance.enddate > 1238445044
>    and libinstance.libinstanceid = libobject.libinstanceid
>    and libinstance.architecture = ?

How are you generating the explain?  My bet is that you're just
substituting a literal in the architecture condition, but if the driver
is smart then maybe it's preparating the query beforehand.  You'll get a
different plan in that case.  Try something like this:

prepare foo(smallint) as ...
   where libinstance.architecture = $1
   ...

explain analyze execute foo(1);

If the plan you get from that is bad (and it often is), you should look
at avoiding a query prepare.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

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

Предыдущее
От: dan@sidhe.org
Дата:
Сообщение: Re: Trying to track down weird query stalls
Следующее
От: dan@sidhe.org
Дата:
Сообщение: Re: Trying to track down weird query stalls