#5025 - Searching title/meta tags in a Gallery category fails to populate results

This is a spacer post for a website comment topic. The content this topic relates to: #5025 - Searching title/meta tags in a Gallery category fails to populate results
To clarify further, it's the title of the gallery that doesn't return a result, despite suggesting the title as I type it. Adding a meta tag matching gallery title has the same effect, "Your search yielded no results. Please try a less specific search. Other category meta tags are returning results so not sure if this is a bug or just localhost weirdness.

Is this any meta tag, or just specific ones? If specific ones can you give an example?
The title of the gallery category is Your Last Wish (autocompletes when searching but doesn't return anything)
Meta tags on the category such as Canada, Female Fronted Metal, Melodic Death Metal return results
Adding Your Last Wish as a meta tag weirdly also fails to return anything (but I'd prefer a return on the title than adding an additional tag for the band name anyway).

Other category titles are returning results in search, so maybe this is stop words or something?
Image

(Click to enlarge)

I can reproduce. Actually YOUR, LAST, and WISH, are all stopwords...

https://dev.mysql.com/doc/refman/8.0/en/fulltext-stopwords.html

Automated response: Workaround MySQL aggressive fulltext stoplist

MySQL's fulltext stoplist includes the word "wish" and possibly other reasonably distinctive words, which can break some perfectly reasonable queries working.

We already have support for switching out a stopword search to a simple string comparison. Extend that to detect a compound-stopword search. Also allow it to do a prefix-locked LIKE query if the search is at least 8 characters; which will be indexable and reasonably distinct, so not too much of a performance penalty.

Oh yes and the autocomplete just represents common past searches, not what searches will work.
Quite a few of those stopwords exist in band names, 'Yours' Truly, Devil 'Within', 'Be Under' Arms, etc. Is there a way to turn them off or are they serving a useful purpose?
Actually I've got a German band called Isn't I need to add. If I change the 8 characters to 4 would that be acceptable? Or is that too low for other things?
I believe MySQL code has to be edited then it has to be recompiled on the server, then the fulltext indexes in Composr would need deleting and re-adding. i.e. long and complex even for me.

Likely MySQL found those words by statistical analysis of common words in text. The idea is that indexing wastes space and searching wastes time and relevancy suffers unless common words are first taken out of the equation.
There's 2 reasons you would not want to do that:
1) Performance, as now any short search matching stopwords becomes a LIKE query which is more intense. It's a possible DOS-attack vector. This is all based on my perceptions, every site will have different performance based on the nature and quantity of content, and server resources,
2) You presumably would only want "Isn't" to match (which will work with my change), but not "Isn't It Wonderful" or whatever. The character limit of 8 was also intended as a tradeoff to resolve this problem.
Okay, wasn't sure if Isn't was covered in the change being 4 chars because I wrongly assumed 8 was the minimum. Thanks for the fix :)

0 guests and 0 members have recently viewed this.