Re: [HACKERS] PATCH: multivariate histograms and MCV lists

Tomas Vondra <tomas.vondra@2ndquadrant.com>

From: Tomas Vondra <tomas.vondra@2ndquadrant.com>
To: Thomas Munro <thomas.munro@enterprisedb.com>
Cc: Dean Rasheed <dean.a.rasheed@gmail.com>, Bruce Momjian <bruce@momjian.us>, Alvaro Herrera <alvherre@2ndquadrant.com>, Andres Freund <andres@anarazel.de>, Mark Dilger <hornschnorter@gmail.com>, Adrien Nayrat <adrien.nayrat@dalibo.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-11-26T22:51:06Z
Lists: pgsql-hackers
On 11/26/18 11:29 PM, Thomas Munro wrote:
> On Mon, Sep 3, 2018 at 11:17 AM Tomas Vondra
> <tomas.vondra@2ndquadrant.com> wrote:
>> Attached is an updated version of the patch series, adopting a couple of
>> improvements - both for MCV lists and histograms.
> 
> Hello Tomas,
> 
> FYI, here are a couple of warnings from GCC (I just noticed because I
> turned on -Werror on cfbot so your patch turned red):
> 
> extended_stats.c: In function ‘statext_clauselist_selectivity’:
> extended_stats.c:1227:6: error: ‘other_sel’ may be used uninitialized
> in this function [-Werror=maybe-uninitialized]
>   sel = mcv_sel + other_sel;
>       ^
> extended_stats.c:1091:5: note: ‘other_sel’ was declared here
>      other_sel,
>      ^
> extended_stats.c:1227:6: error: ‘mcv_sel’ may be used uninitialized in
> this function [-Werror=maybe-uninitialized]
>   sel = mcv_sel + other_sel;
>       ^
> extended_stats.c:1087:5: note: ‘mcv_sel’ was declared here
>      mcv_sel,
>      ^
> 

Thanks, I'll fix that in the next version of the patch I'm working on.


cheers

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


Commits

  1. Convert pre-existing stats_ext tests to new style

  2. Add support for multivariate MCV lists

  3. Improve ANALYZE's strategy for finding MCVs.

  4. Clone extended stats in CREATE TABLE (LIKE INCLUDING ALL)

  5. Try again to fix accumulation of parallel worker instrumentation.

  6. Adjust psql \d query to avoid use of @> operator.

  7. Message style fixes

  8. Add security checks to selectivity estimation functions