• Sergei Petrunia's avatar
    MDEV-30651: Assertion `sel->quick' in make_range_rowid_filters · ef9e3e73
    Sergei Petrunia authored
    (Variant for 10.6: return error code from SQL_SELECT::test_quick_select)
    The optimizer deals with Rowid Filters this way:
    
    1. First, range optimizer is invoked. It saves information
       about all potential range accesses.
    2. A query plan is chosen. Suppose, it uses a Rowid Filter on
       index $IDX.
    3. JOIN::make_range_rowid_filters() calls the range optimizer
    again to create a quick select on index $IDX which will be used
    to populate the rowid filter.
    
    The problem: KILL command catches the query in step #3. Quick
    Select is not created which causes a crash.
    
    Fixed by checking if query was killed.
    ef9e3e73
opt_range.cc 538 KB