• Monty's avatar
    MDEV-30486 Table is not eliminated in bb-11.0 · fe1f4ca8
    Monty authored
    Some tables where not eliminated when they could have been.
    This was caused because HA_KEYREAD_ONLY is not set anymore for InnoDB
    clustered index and the elimination code was depending on
    field->part_of_key_not_clustered which was not set if HA_KEYREAD_ONLY
    is not present.
    
    Fixed by moving out field->part_of_key and
    field->part_of_key_not_clustered from under HA_KEYREAD_ONLY (which
    they should never have been part of).
    
    Other things:
    - Fixed a bug in make_join_select() that caused range to be used when
      there where elminiated or constant tables present (Caused wrong
      change of plans in join_outer_innodb.test). This also affected
      show_explain.test and subselct_sj_mat.test where wrong 'range's where
      replaced with index scans.
    
    Reviewer: Sergei Petrunia <sergey@mariadb.com>
    fe1f4ca8
sql_select.cc 1.02 MB