summaryrefslogtreecommitdiff
path: root/sql/mysqld.cc
diff options
context:
space:
mode:
authorunknown <timour@askmonty.org>2010-11-05 14:42:58 +0200
committerunknown <timour@askmonty.org>2010-11-05 14:42:58 +0200
commitbc7369b74b52cde8aa4a74102178838b214c0ee3 (patch)
tree487833e19157a719f37e3cd1cffcabc66c19d61c /sql/mysqld.cc
parent2dc2098e5989cd92cf6d90b66324c37bc105d5ad (diff)
parent9f2bddbd80fae92840c2db07b75968e816adc213 (diff)
downloadmariadb-git-bc7369b74b52cde8aa4a74102178838b214c0ee3.tar.gz
MWL#89: Cost-based choice between Materialization and IN->EXISTS transformation
Merge 5.3-mwl89 into 5.3 main. There is one remaining test failure in this merge: innodb_mysql_lock2. All other tests have been checked to deliver the same results/explains as 5.3-mwl89, including the few remaining wrong results.
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r--sql/mysqld.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index f8da9432732..b51ffbba7f5 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -341,7 +341,7 @@ static const char *optimizer_switch_names[]=
"index_merge","index_merge_union","index_merge_sort_union",
"index_merge_intersection",
"index_condition_pushdown",
- "firstmatch","loosescan","materialization", "semijoin",
+ "firstmatch","loosescan","materialization","in_to_exists","semijoin",
"partial_match_rowid_merge",
"partial_match_table_scan",
"subquery_cache",
@@ -362,6 +362,7 @@ static const unsigned int optimizer_switch_names_len[]=
sizeof("firstmatch") - 1,
sizeof("loosescan") - 1,
sizeof("materialization") - 1,
+ sizeof("in_to_exists") - 1,
sizeof("semijoin") - 1,
sizeof("partial_match_rowid_merge") - 1,
sizeof("partial_match_table_scan") - 1,
@@ -460,7 +461,8 @@ static const char *optimizer_switch_str="index_merge=on,index_merge_union=on,"
"index_condition_pushdown=on,"
"firstmatch=on,"
"loosescan=on,"
- "materialization=on,"
+ "materialization=off,"
+ "in_to_exists=on,"
"semijoin=on,"
"partial_match_rowid_merge=on,"
"partial_match_table_scan=on,"
@@ -7375,7 +7377,7 @@ thread is in the relay logs.",
{"optimizer_switch", OPT_OPTIMIZER_SWITCH,
"optimizer_switch=option=val[,option=val...], where option={index_merge, "
"index_merge_union, index_merge_sort_union, index_merge_intersection, "
- "index_condition_pushdown, firstmatch, loosescan, materialization, "
+ "index_condition_pushdown, firstmatch, loosescan, materialization, in_to_exists, "
"semijoin, partial_match_rowid_merge, partial_match_table_scan, "
"subquery_cache"
#ifndef DBUG_OFF