Pat Allan on 03 May, 2017 09:09 AM
On Flying Sphinx, you’re using Sphinx v2.1.4 - if you set `version: 2.2.9` in the production environment of config/thinking_sphinx.yml and then run the rebuild command, that should switch everything over. I’m expecting that’ll help, given that Sphinx 2.2.x now uses UTF-8 by default.
Thanks Pat, that seems to have fixed it! A little stumped by this, though, as it was definitely working properly at some point earlier.
Anyway.. I was not aware that I was able to control the Sphinx version, but now I see there's even a section about it in the docs. Since flying sphinx obviously supports 2.2.9, I think perhaps you'd like to update the documentation under the "Sphinx Versions (Ruby Only)" heading as it doesn't mention 2.2.9 at all. :-)
Actually, now I see another issue and I'm wondering if it might be somewhat related.
In production and staging it seems substring matching is not working as it should, but it is working correctly in development.
In dev I can type any substring of what I want to fetch and have it returned as expected, but on Heroku I only seem to get a match if I type a complete word For example, searching for an entry names "Lysgaard":
* In dev, "lys", "ysga", "gaard" will give a match
* On Heroku: Only typing the word "lysgaard" will give a match. An substring of that word will not match.
Would you happen to have any idea what might be going on there?
I don't know what happened here – perhaps I did something weird yesterday or I'm just going insane – but as of now all these substring searches also work in staging and production.
As a side note, I did try your suggestion with the manual rebuild in staging before even checking that the problem still existed, but when I went to prod just to compare the results I noticed it was working there too. Without any intervention on my part.
So for now, everything is peachy. Thanks again for helping me debug!