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