From: | Stephen Frost <sfrost(at)snowman(dot)net> |
---|---|
To: | Andres Freund <andres(at)2ndquadrant(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgreSQL(dot)org |
Subject: | Re: Back-patch change in hashed DISTINCT estimation? |
Date: | 2013-08-21 12:40:24 |
Message-ID: | 20130821124024.GS2706@tamriel.snowman.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
* Andres Freund (andres(at)2ndquadrant(dot)com) wrote:
> On 2013-08-20 17:24:18 -0400, Tom Lane wrote:
> > In a thread over in pgsql-performance, Tomas Vondra pointed out that
> > choose_hashed_distinct was sometimes making different choices than
> > choose_hashed_grouping, so that queries like these:
> >
> > select distinct x from ... ;
> > select x from ... group by 1;
> >
> > might get different plans even though they should be equivalent.
> > After some debugging it turns out that I omitted hash_agg_entry_size()
> > from the hash table size estimate in choose_hashed_distinct --- I'm pretty
> > sure I momentarily thought that this function must yield zero if there are
> > no aggregates, but that's wrong. So we need a patch like this:
>
> > What I'm wondering is whether to back-patch this or leave well enough
> > alone. The risk of back-patching is that it might destabilize plan
> > choices that people like. [...]
>
> > A possible compromise is to back-patch into 9.3 (where the argument about
> > destabilizing plan choices doesn't have much force yet), but not further.
>
> +1 for 9.3 only.
Yeah, I've been thinking about this a bit also and agree that 9.3 is
fine but not farther back.
Thanks,
Stephen
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2013-08-21 12:43:29 | Re: PL/pgSQL, RAISE and error context |
Previous Message | Marko Tiikkaja | 2013-08-21 12:28:24 | PL/pgSQL, RAISE and error context |