• Tomas Vondra's avatar
    Improve test coverage for multi-column MCV lists · d8cfa82d
    Tomas Vondra authored
    The regression tests for extended statistics were not testing a couple
    of important cases for the MCV lists:
    
      * IS NOT NULL clauses - We did have queries with IS NULL clauses, but
        not the negative case.
    
      * clauses with variable on the right - All the clauses had the Var on
        the left, i.e. (Var op Const), so this adds (Const op Var) too.
    
      * columns with fixed-length types passed by reference - All columns
        were using either by-value or varlena types, so add a test with
        UUID columns too. This matters for (de)serialization.
    
      * NULL-only dimension - When one of the columns contains only NULL
        values, we treat it a a special case during (de)serialization.
    
      * arrays containing NULL - When the constant parameter contains NULL
        value, we need to handle it correctly during estimation, for all
        IN, ANY and ALL clauses.
    
    Discussion: https://www.postgresql.org/message-id/flat/20200113230008.g67iyk4cs3xbnjju@development
    Author: Tomas Vondra
    d8cfa82d
stats_ext.out 49.6 KB