{"record":{"id":"f69a27165c443c4e","repo":"elastic/elasticsearch","slug":"required-setting-patterns-is-missing-for-token-f","errorCode":null,"errorMessage":"required setting 'patterns' is missing for token filter [{}]","messagePattern":"required setting 'patterns' is missing for token filter \\[(.+?)\\]","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/PatternCaptureGroupTokenFilterFactory.java","lineNumber":32,"sourceCode":"import org.elasticsearch.common.settings.Settings;\nimport org.elasticsearch.env.Environment;\nimport org.elasticsearch.index.IndexSettings;\nimport org.elasticsearch.index.analysis.AbstractTokenFilterFactory;\n\nimport java.util.List;\nimport java.util.regex.Pattern;\n\npublic class PatternCaptureGroupTokenFilterFactory extends AbstractTokenFilterFactory {\n    private final Pattern[] patterns;\n    private final boolean preserveOriginal;\n    private static final String PATTERNS_KEY = \"patterns\";\n    private static final String PRESERVE_ORIG_KEY = \"preserve_original\";\n\n    PatternCaptureGroupTokenFilterFactory(IndexSettings indexSettings, Environment environment, String name, Settings settings) {\n        super(name);\n        List<String> regexes = settings.getAsList(PATTERNS_KEY, null, false);\n        if (regexes == null) {\n            throw new IllegalArgumentException(\"required setting '\" + PATTERNS_KEY + \"' is missing for token filter [\" + name + \"]\");\n        }\n        patterns = new Pattern[regexes.size()];\n        for (int i = 0; i < regexes.size(); i++) {\n            patterns[i] = Pattern.compile(regexes.get(i));\n        }\n\n        preserveOriginal = settings.getAsBoolean(PRESERVE_ORIG_KEY, true);\n    }\n\n    @Override\n    public TokenFilter create(TokenStream tokenStream) {\n        return new PatternCaptureGroupTokenFilter(tokenStream, preserveOriginal, patterns);\n    }\n}\n","sourceCodeStart":14,"sourceCodeEnd":47,"githubUrl":"https://github.com/elastic/elasticsearch/blob/db6a809a667c081ca1dc7500389d26975573215f/modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/PatternCaptureGroupTokenFilterFactory.java#L14-L47","documentation":"Error \"required setting 'patterns' is missing for token filter [{}]\" thrown in elastic/elasticsearch.","triggerScenarios":"Thrown at modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/PatternCaptureGroupTokenFilterFactory.java:32 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"db6a809a667c081ca1dc7500389d26975573215f","analyzedAt":"2026-08-12T01:39:14.192Z","schemaVersion":2},"datasetVersion":"2026-08-12T12:17:08.281Z"}