{"record":{"id":"eb08db57aad7f622","repo":"elastic/elasticsearch","slug":"the-ngram-tokenizer-name-was-deprecated-in-7-6","errorCode":null,"errorMessage":"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.","messagePattern":"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\\.","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/CommonAnalysisPlugin.java","lineNumber":376,"sourceCode":"\n    @Override\n    public Map<String, AnalysisProvider<CharFilterFactory>> getCharFilters() {\n        Map<String, AnalysisProvider<CharFilterFactory>> filters = new TreeMap<>();\n        filters.put(\"html_strip\", HtmlStripCharFilterFactory::new);\n        filters.put(\"pattern_replace\", requiresAnalysisSettings(PatternReplaceCharFilterFactory::new));\n        filters.put(\"mapping\", requiresAnalysisSettings(MappingCharFilterFactory::new));\n        return filters;\n    }\n\n    @Override\n    public Map<String, AnalysisProvider<TokenizerFactory>> getTokenizers() {\n        Map<String, AnalysisProvider<TokenizerFactory>> tokenizers = new TreeMap<>();\n        tokenizers.put(\"simple_pattern\", SimplePatternTokenizerFactory::new);\n        tokenizers.put(\"simple_pattern_split\", SimplePatternSplitTokenizerFactory::new);\n        tokenizers.put(\"thai\", ThaiTokenizerFactory::new);\n        tokenizers.put(\"nGram\", (IndexSettings indexSettings, Environment environment, String name, Settings settings) -> {\n            if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_8_0_0)) {\n                throw new IllegalArgumentException(\n                    \"The [nGram] tokenizer name was deprecated in 7.6. \"\n                        + \"Please use the tokenizer name to [ngram] for indices created in versions 8 or higher instead.\"\n                );\n            } else if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_7_6_0)) {\n                deprecationLogger.warn(\n                    DeprecationCategory.ANALYSIS,\n                    \"nGram_tokenizer_deprecation\",\n                    \"The [nGram] tokenizer name is deprecated and will be removed in a future version. \"\n                        + \"Please change the tokenizer name to [ngram] instead.\"\n                );\n            }\n            return new NGramTokenizerFactory(indexSettings, environment, name, settings);\n        });\n        tokenizers.put(\"ngram\", NGramTokenizerFactory::new);\n        tokenizers.put(\"edgeNGram\", (IndexSettings indexSettings, Environment environment, String name, Settings settings) -> {\n            if (indexSettings.getIndexVersionCreated().onOrAfter(IndexVersions.V_8_0_0)) {\n                throw new IllegalArgumentException(\n                    \"The [edgeNGram] tokenizer name was deprecated in 7.6. \"","sourceCodeStart":358,"sourceCodeEnd":394,"githubUrl":"https://github.com/elastic/elasticsearch/blob/db6a809a667c081ca1dc7500389d26975573215f/modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/CommonAnalysisPlugin.java#L358-L394","documentation":"Error \"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.\" thrown in elastic/elasticsearch.","triggerScenarios":"Thrown at modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/CommonAnalysisPlugin.java:376 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"db6a809a667c081ca1dc7500389d26975573215f","analyzedAt":"2026-08-12T01:39:14.192Z","schemaVersion":2},"datasetVersion":"2026-08-12T13:17:24.610Z"}