Description:
On the data source define a table with FULLTEXT index.
On the FEDERATED machine try to create the table with FULLTEXT. It fails.
On the FEDERATED table try to query MATCH () AGAINST () with no FULLTEXT - also fails.
How to repeat:
On data source
create table t ( v varchar(4000) not null );
insert into t ( v ) values ("yakediyak");
insert into t ( v ) values ("spaghetti");
insert into t ( v ) values ("hamburger");
insert into t ( v ) values ("hot dog");
insert into t ( v ) values ("pizza");
alter table t add fulltext (v);
On FEDERATED:
create table t ( v varchar(4000) not null, fulltext f (v) ) engine=federated connection="mysql://root:mysql2006@127.0.0.1:3041/kris/t"; -- fails
create table t ( v varchar(4000) not null ) engine=federated connection="mysql://root:mysql2006@127.0.0.1:3041/kris/t";
select match (v) against ('hamburger') as rank, v from t where match (v) against ('hamburger'); -- fails
Suggested fix:
Make FEDERATED support FULLTEXT.
Use case: Master has table t TEXT on InnoDB, Slave has this changed to MyISAM, with FULLTEXT added. Now create tt as FEDERATED on Master so that applications can use FULLTEXT on Master without having to deal with two connections.