• Tom Lane's avatar
    Don't apply sortgroupref labels to a tlist that might not match. · c12f02ff
    Tom Lane authored
    If we need to use a gating Result node for pseudoconstant quals,
    create_scan_plan() intentionally suppresses use_physical_tlist's checks
    on whether there are matches for sortgroupref labels, on the grounds that
    we don't need matches because we can label the Result's projection output
    properly.  However, it then called apply_pathtarget_labeling_to_tlist
    anyway.  This oversight was harmless when written, but in commit aeb9ae64
    I made that function throw an error if there was no match.  Thus, the
    combination of a table scan, pseudoconstant quals, and a non-simple-Var
    sortgroupref column threw the dreaded "ORDER/GROUP BY expression not found
    in targetlist" error.  To fix, just skip applying the labeling in this
    case.  Per report from Rushabh Lathia.
    
    Report: <CAGPqQf2iLB8t6t-XrL-zR233DFTXxEsfVZ4WSqaYfLupEoDxXA@mail.gmail.com>
    c12f02ff
aggregates.sql 24.5 KB