Hi!

> > 1.1) Full Text Search can, according to the manual, be performed without
> > the FTS index, but it is slower.
> > 1.2) MySQL can only use 1 index per join per table.
> >
> > => This means that if I specify the USE INDEX (some_non_fulltext_index),
> > the FTS will be performed without the index, and this will only work IN
> > BOOLEAN MODE. Otherwise, MySQL returns an error, complaining about the
> > lack of an index.
>
> Gordan, you're right. It's the way it was expected to behave :-)

The part that I thought could be a "bug" was the one you didn't quote. The 
problem I am experiencing is that the boolean MATCH/AGAINST FTS WITH an FTS 
index doesn't match the results returned WITHOUT the FTS index when the same 
query/parameters are used. I don't know if this is the case when there is no 
index at all (it would be difficult to test, too). I just found this out by 
using the USE INDEX clause to switch to using different indices.

Incidentally, I have set the fts minimum word length to 1, so the cause of 
this is not the fact that the index skips some values. In fact, it is the 
unindexed search that seems to get things wrong. The indexed FTS verifiably 
works on my data set. The un-indexed FTS demonstrably doesn't work as 
expected. The unindexed search returns much fewer values.

> It's not a "known" bug as the code is rather new.
>
> Can you create a test case for this ?

Possibly, but it could be difficult as my data set changes daily. It looks 
like a problem that ought to be replicable with fairly generic data.

Incidentally, could it be caused by the fact that I am using a multi-column 
FTS? Could this be where the operation without the index is falling over?

Anyway, from what I can see, the indexed FTS works great. The unindexed FTS 
doesn't (both in boolean mode).

Another thing - is it possible to combine a FULLTEXT index with another 
column/index to achieve a multi-column index with FTS capabilities? It just 
seems wrong that FTS should take a fixed amount of time regardless of what 
other indexable restrictions are made on the data set, and if there is a 
limitation on 1 index per table per query, then the multi-column index is the 
only way around it.

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to