Re: Query planner wants to use seq scan
От | Bertrand Paquet |
---|---|
Тема | Re: Query planner wants to use seq scan |
Дата | |
Msg-id | CAN1xZsexuoOTjoNmFhGpOgD-BidFdh-DZTbmfDmXz=pg1sazhg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Query planner wants to use seq scan (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Query planner wants to use seq scan
|
Список | pgsql-performance |
Hi tom,
I use a btree index. Is it the good solution, even with the In clause ?
I did the test yesterday with an index on the three fields, and with a partial index on organization and status and where is null condition on handled. I saw no modification on query plan.
May be I forgot to analyze vacuum after. I will retry tonight.
Regards,
Bertrand
Le mardi 27 octobre 2015, Tom Lane <tgl@sss.pgh.pa.us> a écrit :
Le mardi 27 octobre 2015, Tom Lane <tgl@sss.pgh.pa.us> a écrit :
Bertrand Paquet <bertrand.paquet@doctolib.fr> writes:
> We have a slow query. After analyzing, the planner decision seems to be
> discutable : the query is faster when disabling seqscan. See below the two
> query plan, and an extract from pg_stats.
> Any idea about what to change to help the planner ?
Neither one of those plans is very good: you're just hoping that the
Filter condition will let a tuple through sooner rather than later.
If you care about the performance of this type of query, I'd consider
creating an index on (organization_id, status, handled_by) so that all
the conditions can be checked in the index.
regards, tom lane
В списке pgsql-performance по дате отправления: