Re: What happens between end of explain analyze and end of query execution ? - Mailing list pgsql-performance

From Jeff Janes
Subject Re: What happens between end of explain analyze and end of query execution ?
Date
Msg-id CAMkU=1zSCsB1oPRsK65Y4JV1+AWwDtLyR26NTHCRpfqSk_ORZw@mail.gmail.com
Whole thread Raw
In response to Re: What happens between end of explain analyze and end of query execution ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: What happens between end of explain analyze and end of query execution ?
List 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 by date:

Previous
From: hubert depesz lubaczewski
Date:
Subject: Re: Find how much memory is postgres using
Next
From: Tom Lane
Date:
Subject: Re: What happens between end of explain analyze and end of query execution ?