• Igor Babaev's avatar
    Fixed the bug mdev-10693. · 2e7ba70a
    Igor Babaev authored
    The code that chooses between materialization of a non-correlated
    IN subquery and its transformation into an EXISTS correlated
    subquery assumes that the execution plan for the outer select
    has been already built. However it was not always so if subqueries
    occurred in the expressions used for ref access to tables of
    the outer select. A call of the function create_ref_for_key() in
    get_best_combination() could trigger a premature execution of
    the above mentioned code when the execution plan structures for
    the outer select were not fully built. This could cause a crash
    of the server.
    
    The fix postpones the calls of create_ref_for_key() until the
    structures for the execution plan is fully built.
    2e7ba70a
subselect_innodb.test 14.1 KB