summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2004-08-19 18:40:15 +0200
committerunknown <serg@serg.mylan>2004-08-19 18:40:15 +0200
commit4f8bbaeda02755a7a455b7bee5c5e45081a3e972 (patch)
tree004edccc6670d662cae84ca72eb44a3bbc305c30 /sql/sql_select.cc
parent96ac7329082b7de1a1f1ff3f8240a56b2219d405 (diff)
downloadmariadb-git-4f8bbaeda02755a7a455b7bee5c5e45081a3e972.tar.gz
Bug #4769 - ft in subqueries
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index c56645e06b9..3a0ae219e81 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -729,6 +729,10 @@ JOIN::optimize()
(select_lex->ftfunc_list->elements ?
SELECT_NO_JOIN_CACHE : 0));
+ /* Perform FULLTEXT search before all regular searches */
+ if (!(select_options & SELECT_DESCRIBE))
+ init_ftfuncs(thd, select_lex, test(order));
+
/*
is this simple IN subquery?
*/
@@ -784,7 +788,7 @@ JOIN::optimize()
join_tab->info= "Using index; Using where";
else
join_tab->info= "Using index";
-
+
DBUG_RETURN(unit->item->
change_engine(new subselect_indexsubquery_engine(thd,
join_tab,
@@ -849,8 +853,6 @@ JOIN::optimize()
}
having= 0;
- /* Perform FULLTEXT search before all regular searches */
- init_ftfuncs(thd, select_lex, test(order));
/* Create a tmp table if distinct or if the sort is too complicated */
if (need_tmp)
{
@@ -858,7 +860,7 @@ JOIN::optimize()
thd->proc_info="Creating tmp table";
init_items_ref_array();
-
+
tmp_table_param.hidden_field_count= (all_fields.elements -
fields_list.elements);
if (!(exec_tmp_table1 =