elastic/elasticsearch · error · IllegalArgumentException

The [edgeNGram] tokenizer name was deprecated in 7.6. Please

Error message

The [edgeNGram] tokenizer name was deprecated in 7.6. Please use the tokenizer name to [edge_nGram] for indices created in versions 8 or higher instead.

What it means

Error "The [edgeNGram] tokenizer name was deprecated in 7.6. Please use the tokenizer name to [edge_nGram] for indices created in versions 8 or higher instead." thrown in elastic/elasticsearch.

Source

Thrown at modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/CommonAnalysisPlugin.java:393

            if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_8_0_0)) {
                throw new IllegalArgumentException(
                    "The [nGram] tokenizer name was deprecated in 7.6. "
                        + "Please use the tokenizer name to [ngram] for indices created in versions 8 or higher instead."
                );
            } else if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_7_6_0)) {
                deprecationLogger.warn(
                    DeprecationCategory.ANALYSIS,
                    "nGram_tokenizer_deprecation",
                    "The [nGram] tokenizer name is deprecated and will be removed in a future version. "
                        + "Please change the tokenizer name to [ngram] instead."
                );
            }
            return new NGramTokenizerFactory(indexSettings, environment, name, settings);
        });
        tokenizers.put("ngram", NGramTokenizerFactory::new);
        tokenizers.put("edgeNGram", (IndexSettings indexSettings, Environment environment, String name, Settings settings) -> {
            if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_8_0_0)) {
                throw new IllegalArgumentException(
                    "The [edgeNGram] tokenizer name was deprecated in 7.6. "
                        + "Please use the tokenizer name to [edge_nGram] for indices created in versions 8 or higher instead."
                );
            } else if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_7_6_0)) {
                deprecationLogger.warn(
                    DeprecationCategory.ANALYSIS,
                    "edgeNGram_tokenizer_deprecation",
                    "The [edgeNGram] tokenizer name is deprecated and will be removed in a future version. "
                        + "Please change the tokenizer name to [edge_ngram] instead."
                );
            }
            return new EdgeNGramTokenizerFactory(indexSettings, environment, name, settings);
        });
        tokenizers.put("edge_ngram", EdgeNGramTokenizerFactory::new);
        tokenizers.put("char_group", CharGroupTokenizerFactory::new);
        tokenizers.put("classic", ClassicTokenizerFactory::new);
        tokenizers.put("letter", LetterTokenizerFactory::new);
        // TODO deprecate and remove in API

View on GitHub (pinned to db6a809a66)

When it happens

Trigger: Thrown at modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/CommonAnalysisPlugin.java:393 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of elastic/elasticsearch@db6a809a66 (2026-08-12). Data as JSON: /api/errors/57fd258fea74393c. Report an issue: GitHub.