Commit 078dada4 authored by Sinisa@sinisa.nasamreza.org's avatar Sinisa@sinisa.nasamreza.org
Browse files

Fixed a rare bug when fulltext index is present and no tables are used.

A better fix would be to have a map of tables that are not used at all, 
and to annul just fledls in that TABLE.
parent acb1710d
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -49457,6 +49457,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 @strong{create temporary table}, @strong{lock tables},
@strong{replication client}, @strong{replication slave},
@strong{show databases} and @strong{super}. To use these, you must have
+9 −0
Original line number Diff line number Diff line
@@ -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;
+4 −0
Original line number Diff line number Diff line
@@ -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;
+7 −0
Original line number Diff line number Diff line
@@ -257,7 +257,14 @@ mysql_select(THD *thd,TABLE_LIST *tables,List<Item> &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)