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. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers