diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_priv.h | 4 | ||||
-rw-r--r-- | sql/sql_show.cc | 2 | ||||
-rw-r--r-- | sql/sys_vars.cc | 1 | ||||
-rw-r--r-- | sql/table.cc | 13 |
4 files changed, 7 insertions, 13 deletions
diff --git a/sql/sql_priv.h b/sql/sql_priv.h index 7b6a139bbdf..493313da90a 100644 --- a/sql/sql_priv.h +++ b/sql/sql_priv.h @@ -232,7 +232,6 @@ #define OPTIMIZER_SWITCH_USE_ROWID_FILTER (1ULL << 33) #define OPTIMIZER_SWITCH_COND_PUSHDOWN_FROM_HAVING (1ULL << 34) #define OPTIMIZER_SWITCH_NOT_NULL_RANGE_SCAN (1ULL << 35) -#define OPTIMIZER_SWITCH_IGNORE_INDEXES (1ULL << 36) #define OPTIMIZER_SWITCH_DEFAULT (OPTIMIZER_SWITCH_INDEX_MERGE | \ OPTIMIZER_SWITCH_INDEX_MERGE_UNION | \ @@ -263,8 +262,7 @@ OPTIMIZER_SWITCH_COND_PUSHDOWN_FOR_SUBQUERY | \ OPTIMIZER_SWITCH_USE_ROWID_FILTER | \ OPTIMIZER_SWITCH_COND_PUSHDOWN_FROM_HAVING | \ - OPTIMIZER_SWITCH_OPTIMIZE_JOIN_BUFFER_SIZE| \ - OPTIMIZER_SWITCH_IGNORE_INDEXES) + OPTIMIZER_SWITCH_OPTIMIZE_JOIN_BUFFER_SIZE) /* Replication uses 8 bytes to store SQL_MODE in the binary log. The day you diff --git a/sql/sql_show.cc b/sql/sql_show.cc index 5594b98db27..74d094a5dbb 100644 --- a/sql/sql_show.cc +++ b/sql/sql_show.cc @@ -2481,7 +2481,7 @@ static void store_key_options(THD *thd, String *packet, TABLE *table, } if (key_info->is_ignored) - packet->append(STRING_WITH_LEN(" IGNORE")); + packet->append(STRING_WITH_LEN(" IGNORED")); } } diff --git a/sql/sys_vars.cc b/sql/sys_vars.cc index 66e7d996988..df6f9933e36 100644 --- a/sql/sys_vars.cc +++ b/sql/sys_vars.cc @@ -2714,7 +2714,6 @@ export const char *optimizer_switch_names[]= "rowid_filter", "condition_pushdown_from_having", "not_null_range_scan", - "ignore_indexes", "default", NullS }; diff --git a/sql/table.cc b/sql/table.cc index a7142db17bd..282427c61d1 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -1431,13 +1431,9 @@ void TABLE_SHARE::set_ignored_indexes() key_map TABLE_SHARE::usable_indexes(THD *thd) { - if (optimizer_flag(thd, OPTIMIZER_SWITCH_IGNORE_INDEXES)) - { - key_map usable_indexes(keys_in_use); - usable_indexes.subtract(ignored_indexes); - return usable_indexes; - } - return keys_in_use; + key_map usable_indexes(keys_in_use); + usable_indexes.subtract(ignored_indexes); + return usable_indexes; } @@ -8269,7 +8265,8 @@ bool TABLE_LIST::process_index_hints(TABLE *tbl) */ if (tbl->s->keynames.type_names == 0 || (pos= find_type(&tbl->s->keynames, hint->key_name.str, - hint->key_name.length, 1)) <= 0) + hint->key_name.length, 1)) <= 0 || + (tbl->s->key_info[pos - 1].is_ignored)) { my_error(ER_KEY_DOES_NOT_EXISTS, MYF(0), hint->key_name.str, alias.str); return 1; |