diff --git a/Docs/manual.texi b/Docs/manual.texi index 914923df8df..0fefa429154 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -49456,6 +49456,8 @@ Our TODO section contains what we plan to have in 4.0. @xref{TODO MySQL 4.0}. @itemize @bullet @item +Fixed a rare bug when fulltext index is present and no tables are used +@item Added privileges @code{CREATE TEMPORARY TABLES}, @code{LOCK TABLES}, @code{REPLICATION CLIENT}, @code{REPLICATION SLAVE}, @code{SHOW DATABASES} and @code{SUPER}. To use these, you must have diff --git a/mysql-test/r/fulltext.result b/mysql-test/r/fulltext.result index 5ecab7278db..f5e65c5103b 100644 --- a/mysql-test/r/fulltext.result +++ b/mysql-test/r/fulltext.result @@ -192,3 +192,12 @@ a b 2 fullaaa fullzzz 1 I wonder why the fulltext index doesnt work? drop table t1; +CREATE TABLE t1 ( id int(11) NOT NULL auto_increment primary key, mytext text NOT NULL, FULLTEXT KEY mytext (mytext)) TYPE=MyISAM; +INSERT INTO t1 VALUES (1,'my small mouse'),(2,'la-la-la'),(3,'It is so funny'),(4,'MySQL Tutorial'); +select 8 from t1; +8 +8 +8 +8 +8 +drop table t1; diff --git a/mysql-test/t/fulltext.test b/mysql-test/t/fulltext.test index 238705c8e3e..4093f06d627 100644 --- a/mysql-test/t/fulltext.test +++ b/mysql-test/t/fulltext.test @@ -154,4 +154,8 @@ insert into t1 values (2,"fullaaa fullzzz"); select * from t1 where match b against ('full*' in boolean mode); drop table t1; +CREATE TABLE t1 ( id int(11) NOT NULL auto_increment primary key, mytext text NOT NULL, FULLTEXT KEY mytext (mytext)) TYPE=MyISAM; +INSERT INTO t1 VALUES (1,'my small mouse'),(2,'la-la-la'),(3,'It is so funny'),(4,'MySQL Tutorial'); +select 8 from t1; +drop table t1; diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 3a52da5a084..9bb1365e4c3 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -257,7 +257,14 @@ mysql_select(THD *thd,TABLE_LIST *tables,List &fields,COND *conds, } TABLE_LIST *table; for (table=tables ; table ; table=table->next) + { join.tables++; + if (!thd->used_tables) + { + TABLE *tbl=table->table; + tbl->keys_in_use_for_query=tbl->used_keys= tbl->keys_in_use=0; + } + } } procedure=setup_procedure(thd,proc_param,result,fields,&error); if (error)