• Rex's avatar
    MDEV-34506 2nd execution name resolution problem with pushdown into unions · 48b256a7
    Rex authored
    Statements affected by this bug need all the following to be true
    1) a derived table table or view whose specification contains a set
         operation at the top level.
    2) a grouping operator (group by/having) operating on a column alias
         other than in the first select of the union/intersect
    3) an outer condition that will be pushed into all selects in this
         union/intersect, either into the where or having clause
    
    When pushing a condition into all selects of a unit with more than one
    select, pushdown_cond_for_derived() renames items so we can re-use the
    condition being pushed.
    These names need to be saved and reset for correct name resolution on
    second execution of prepared statements.
    
    Reviewed by Igor Babaev (igor@mariadb.com)
    48b256a7
derived_cond_pushdown.result 580 KB