Certain terms don't show up any search results (Omeka 2.2)

Hi Folks,

When searching for the term “little” using a keyword search, I don’t get any results (despite plenty of items with this term).

I noticed this entry suggests that some terms won’t come up when >50% of records includes the term: Keyword search not working for some words?

I don’t think this would be the case with the term “little” but just in case I tried a Boolean search (i.e. http://wyndhamhistory.net.au/search?query=little&query_type=Boolean) to no avail.

Needless to say I tried a re-index but this didn’t help either. Incidentally, where do I go to check the index logs, maybe something’s stopping the index from running?(although I don’t get any errors in the /admin/settings/edit-search screen)

Any thoughts on what could be causing this?

This problem occurs when an installation of Omeka uses MyISAM as the search engine for the search_texts table instead of InnoDB. MyISAM ignores a long list of stopwords like “little”. InnoDB also uses stopwords, but the list is short and contains words like ‘as’ and ‘the’.

This article explains how to convert from MyISAM to InnoDB. I chose the method at the very end using phpMyAdmin and selecting the search_texts table. The conversion only took a few seconds.

2 Likes

Thanks very much for the reply, that makes sense.
I tried changing the search_texts table in my Dev site using the phpmyadmin instructions but I got the following error. I’m guessing this might be an issue with the search_texts table not supporting this engine in my version of Omeka (2.2?)

My guess is that you are running an older version of MySQL. When I searched this error message in Google I found posts indicating that upgrading to MySQL 5.6 or newer will resolve the issue. Note that this error is unrelated to the fact that you are running Omeka 2.2.

For the record, I am using MariaDB 10.0.32, but I would expect that you’ll be okay after you upgrade to a newer version of MySQL.

ah, okay thanks, I’ll investigate with our hosting provider…

Confirming that after upgrading to MySQL 5.6 I was able to convert the table to InnoDB. Really appreciate your advice on this, thanks again!

This topic was automatically closed 250 days after the last reply. New replies are no longer allowed.