{"record":{"id":"9a90a1dc73355af0","repo":"elastic/elasticsearch","slug":"exception-while-reading-hyphenation-patterns-path","errorCode":null,"errorMessage":"Exception while reading hyphenation_patterns_path.","messagePattern":"Exception while reading hyphenation_patterns_path\\.","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/HyphenationCompoundWordTokenFilterFactory.java","lineNumber":49,"sourceCode":"    private final boolean noSubMatches;\n    private final boolean noOverlappingMatches;\n    private final HyphenationTree hyphenationTree;\n\n    HyphenationCompoundWordTokenFilterFactory(IndexSettings indexSettings, Environment env, String name, Settings settings) {\n        super(indexSettings, env, name, settings);\n\n        String hyphenationPatternsPath = settings.get(\"hyphenation_patterns_path\", null);\n        if (hyphenationPatternsPath == null) {\n            throw new IllegalArgumentException(\"hyphenation_patterns_path is a required setting.\");\n        }\n\n        Path hyphenationPatternsFile = env.configDir().resolve(hyphenationPatternsPath);\n\n        try {\n            InputStream in = Files.newInputStream(hyphenationPatternsFile);\n            hyphenationTree = HyphenationCompoundWordTokenFilter.getHyphenationTree(new InputSource(in));\n        } catch (Exception e) {\n            throw new IllegalArgumentException(\"Exception while reading hyphenation_patterns_path.\", e);\n        }\n\n        noSubMatches = settings.getAsBoolean(\"no_sub_matches\", false);\n        noOverlappingMatches = settings.getAsBoolean(\"no_overlapping_matches\", false);\n    }\n\n    @Override\n    public TokenStream create(TokenStream tokenStream) {\n        return new HyphenationCompoundWordTokenFilter(\n            tokenStream,\n            hyphenationTree,\n            wordList,\n            minWordSize,\n            minSubwordSize,\n            maxSubwordSize,\n            onlyLongestMatch,\n            noSubMatches,\n            noOverlappingMatches","sourceCodeStart":31,"sourceCodeEnd":67,"githubUrl":"https://github.com/elastic/elasticsearch/blob/db6a809a667c081ca1dc7500389d26975573215f/modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/HyphenationCompoundWordTokenFilterFactory.java#L31-L67","documentation":"Error \"Exception while reading hyphenation_patterns_path.\" thrown in elastic/elasticsearch.","triggerScenarios":"Thrown at modules/analysis-common/src/main/java/org/elasticsearch/analysis/common/HyphenationCompoundWordTokenFilterFactory.java:49 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-12T11:17:21.771Z"}