| Bug #31994 | fulltext does not find results with tables with few records | ||
|---|---|---|---|
| Submitted: | 31 Oct 2007 16:33 | Modified: | 5 Nov 2007 18:32 |
| Reporter: | Hector Feliciano | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Documentation | Severity: | S1 (Critical) |
| Version: | 5.0.32 | OS: | Linux (-Debian_7etch1 for pc-linux-g) |
| Assigned to: | Paul DuBois | CPU Architecture: | Any |
| Tags: | fulltext | ||
[1 Nov 2007 10:14]
Hartmut Holzgraefe
This is almost expected behavior due to the following: In addition, words that are present in more than 50% of the rows are considered common and do not match. Full-text searches are natural language searches if no modifier is given. http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html The actual limit seems to be "50% or more" instead of "more than 50%" though, so i'm changing this into a documentation bug.
[5 Nov 2007 18:32]
Paul DuBois
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly, and will be included in the next release of the relevant products. I've updated the manual to change "more than 50%" to "50% or more".

Description: with a table of two rows, fulltext does not work, with tables of three rows it works How to repeat: drop table if exists fulltext_sample; CREATE TABLE fulltext_sample(copy TEXT,FULLTEXT(copy)) TYPE=MyISAM; INSERT INTO fulltext_sample VALUES ("ticcIt appears good FROM here"), ("es el ticc mejor"); SELECT DISTINCTROW * FROM fulltext_sample WHERE MATCH(copy) AGAINST("ticc"); drop table if exists fulltext_sample; CREATE TABLE fulltext_sample(copy TEXT,FULLTEXT(copy)) TYPE=MyISAM; INSERT INTO fulltext_sample VALUES ("ticcIt appears good FROM here"), ("es el ticc mejor"),("z"); SELECT DISTINCTROW * FROM fulltext_sample WHERE MATCH(copy) AGAINST("ticc"); Suggested fix: make it work.