diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-05-08 12:12:48 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-05-08 12:12:48 +0200 |
commit | 1c418df7228ff3eaa1f9a1d9d630cb46947da781 (patch) | |
tree | afedb54610509f058c37d7d04a80dc9763377b83 /sql | |
parent | fc25437aff119adcfe5bc831e9f1af28cfa0b8a3 (diff) | |
parent | 15f9931f6d2b0eb4006fdc42072c2905fd67c1aa (diff) | |
download | mariadb-git-1c418df7228ff3eaa1f9a1d9d630cb46947da781.tar.gz |
Merge branch '5.5' into 10.0
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_select.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 8d63902d9eb..20456931136 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -8562,12 +8562,14 @@ get_best_combination(JOIN *join) { if (j->bush_children) j= j->bush_children->start; - - used_tables|= j->table->map; - if ((keyuse= join->best_positions[tablenr].key) && - create_ref_for_key(join, j, keyuse, TRUE, used_tables)) - DBUG_RETURN(TRUE); // Something went wrong + used_tables|= j->table->map; + if (j->type != JT_CONST && j->type != JT_SYSTEM) + { + if ((keyuse= join->best_positions[tablenr].key) && + create_ref_for_key(join, j, keyuse, TRUE, used_tables)) + DBUG_RETURN(TRUE); // Something went wrong + } if (j->last_leaf_in_bush) j= j->bush_root_tab; } |