Re: Back-patch change in hashed DISTINCT estimation? - Mailing list pgsql-hackers

From Stephen Frost
Subject Re: Back-patch change in hashed DISTINCT estimation?
Date
Msg-id 20130821124024.GS2706@tamriel.snowman.net
Whole thread Raw
In response to Re: Back-patch change in hashed DISTINCT estimation?  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: Back-patch change in hashed DISTINCT estimation?
List pgsql-hackers
* Andres Freund (andres@2ndquadrant.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

pgsql-hackers by date:

Previous
From: Marko Tiikkaja
Date:
Subject: PL/pgSQL, RAISE and error context
Next
From: Pavel Stehule
Date:
Subject: Re: PL/pgSQL, RAISE and error context