diff options
Diffstat (limited to 'sql/opt_subselect.cc')
-rw-r--r-- | sql/opt_subselect.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/opt_subselect.cc b/sql/opt_subselect.cc index 0aa6fb7e913..02a57a9e7df 100644 --- a/sql/opt_subselect.cc +++ b/sql/opt_subselect.cc @@ -446,7 +446,7 @@ int check_and_do_in_subquery_rewrites(JOIN *join) subquery execution strategies based on optimizer switches and syntactic properties. */ - if (in_subs) + if (in_subs && !in_subs->has_strategy()) { if (is_materialization_applicable(thd, in_subs, select_lex)) { @@ -3920,8 +3920,8 @@ int setup_semijoin_dups_elimination(JOIN *join, ulonglong options, if (j != join->const_tables && js_tab->use_quick != 2 && j <= no_jbuf_after && ((js_tab->type == JT_ALL && join_cache_level != 0) || - (join_cache_level > 2 && (tab->type == JT_REF || - tab->type == JT_EQ_REF)))) + (join_cache_level > 2 && (js_tab->type == JT_REF || + js_tab->type == JT_EQ_REF)))) { /* Looks like we'll be using join buffer */ first_table= join->const_tables; |