• Tom Lane's avatar
    Teach planner to account for HAVING quals in aggregation plan nodes. · 7b6c0754
    Tom Lane authored
    For some reason, we have never accounted for either the evaluation cost
    or the selectivity of filter conditions attached to Agg and Group nodes
    (which, in practice, are always conditions from a HAVING clause).
    
    Applying our regular selectivity logic to post-grouping conditions is a
    bit bogus, but it's surely better than taking the selectivity as 1.0.
    Perhaps someday the extended-statistics mechanism can be taught to provide
    statistics that would help us in getting non-default estimates here.
    
    Per a gripe from Benjamin Coutu.  This is surely a bug fix, but I'm
    hesitant to back-patch because of the prospect of destabilizing existing
    plan choices.  Given that it took us this long to notice the bug, it's
    probably not hurting too many people in the field.
    
    Discussion: https://postgr.es/m/20968.1509486337@sss.pgh.pa.us
    7b6c0754
pathnode.c 119 KB