Re: What happens between end of explain analyze and end of query execution ?

Поиск
Список
Период
Сортировка
От Jeff Janes
Тема Re: What happens between end of explain analyze and end of query execution ?
Дата
Msg-id CAMkU=1zSCsB1oPRsK65Y4JV1+AWwDtLyR26NTHCRpfqSk_ORZw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: What happens between end of explain analyze and end of query execution ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: What happens between end of explain analyze and end of query execution ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-performance
On Sat, Apr 6, 2013 at 9:27 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Franck Routier <franck.routier@axege.com> writes:
> Le 05/04/2013 16:17, Tom Lane a écrit :
>> What have you got the statistics targets set to in this database?

> Ok, the problem definitely comes from the default_statistics_target
> which is obviously too high on the database.

Yeah, eqjoinsel() is O(N^2) in the lengths of the MCV lists, in the
worst case where there's little overlap in the list memberships.
The actual cost would depend a lot on the specific column datatypes.


I guess this pre-emptively answers a question I was intending to ask on performance:  Whether anyone increased default_statistics_target and came to regret it.  I had seen several problems fixed by increasing default_statistics_target, but this is the first one I recall caused by increasing it.

Do you think fixing the O(N^2) behavior would be a good to-do item?

Cheers,

Jeff

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

Предыдущее
От: hubert depesz lubaczewski
Дата:
Сообщение: Re: Find how much memory is postgres using
Следующее
От: Tom Lane
Дата:
Сообщение: Re: What happens between end of explain analyze and end of query execution ?