@jimczi I totally get why the synonyms are processed the way they are and I think it's a powerful change. My concern is that it throws when creating an index and there is no way around it. I'd rather it just optionally ignore that error and continue.
Here is an example:
Take the synonym &,and
The ampersand will be eliminated by the standard tokenizer used in custom analyzer A which will throw then cause the index creation to throw. However, that's a synonym that is useful in a different custom analyzer, B, that uses the whitespace tokenizer where the & is preserved.
I just checked and we have over 40 analyzers and 2,300 synonyms. I can't just go in and whack away these synonyms. I can't even tell you how many combinations fail.
As a workaround, do you think it's a matter of just creating a custom synonym plugin that extends the existing synonym tokenfilter and catches the exception and ignores it?