-
Annamalai Gurusami authored
Problem: InnoDB fulltext boolean queries incorrectly handle plus combined with parentheses. For example, +word1 +(>word2 <word3) The query is matching any rows containing "word1" and ignoring the values in parentheses. The documentation mentions about the following behaviour: '+apple +(>turnover <strudel)' Find rows that contain the words “apple” and “turnover”, or “apple” and “strudel” (in any order), but rank “apple turnover” higher than “apple strudel”. Solution: Analysis showed that the result of the subexpression was being ignored if it was empty. This behaviour is incorrect. Allow the subexpression to be empty, which is necessary to handle the above case. rb#7435 approved by Jimmy.
Annamalai Gurusami authoredProblem: InnoDB fulltext boolean queries incorrectly handle plus combined with parentheses. For example, +word1 +(>word2 <word3) The query is matching any rows containing "word1" and ignoring the values in parentheses. The documentation mentions about the following behaviour: '+apple +(>turnover <strudel)' Find rows that contain the words “apple” and “turnover”, or “apple” and “strudel” (in any order), but rank “apple turnover” higher than “apple strudel”. Solution: Analysis showed that the result of the subexpression was being ignored if it was empty. This behaviour is incorrect. Allow the subexpression to be empty, which is necessary to handle the above case. rb#7435 approved by Jimmy.
Loading