My company has been using Elasticsearch since 2013 to power site search. Our content editors have maintained a synonym configuration for ages via an admin UI that writes the file and ships it to Elasticsearch. I have built a ton of custom analyzers for our search engine that include the synonym tokenfilter.
Today, trying to upgrade to 6.2 from 5.6, we got the dreaded synonym parsing error. And I've gone down the path of trying to clean them up. The issue is that certain synonyms apply in some analyzers and are definitely removed in others. I can't just remove the synonyms, so this means I'd really need to make a synonyms file for each analyzer which seems insane.
In addition, we'll have to validate synonyms by creating a fake index every time our content team updates synonyms to verify that they aren't breaking anything. Are there any workaround here? Ideally, if a synonym doesn't validate because it's been removed, I'd like it just to be ignored and not throw an error. Is this a case for a custom plugin or something that wraps the synonym filter?
Why was the decision made to couple the synonyms to the analyzer settings requiring independent synonyms files per analyzer?