• Sergey Glukhov's avatar
    Bug#56814 Explain + subselect + fulltext crashes server · e6472e8f
    Sergey Glukhov authored
    create_sort_index() function overwrites original JOIN_TAB::type field.
    At re-execution of subquery overwritten JOIN_TAB::type(JT_ALL) is
    used instead of JT_FT. It misleads test_if_skip_sort_order() and
    the function tries to find suitable key for the order that should
    not be allowed for FULLTEXT(JT_FT) table.
    The fix is to restore JOIN_TAB strucures for subselect on re-execution
    for EXPLAIN.
    Additional fix:
    Update TABLE::maybe_null field which
    affects list_contains_unique_index() behaviour as it
    could have the value(maybe_null==TRUE) based on the
    assumption that this join is outer
    (see setup_table_map() func).
    e6472e8f
explain.result 13.3 KB