Briefly, this error occurs when Elasticsearch encounters an unexpected option in its configuration or query. It’s expecting a specific option but found something else. This is usually due to a typo, incorrect syntax, or a deprecated option. To resolve this issue, you should first identify the option causing the error. Check the Elasticsearch documentation to ensure the option is valid and correctly spelled. If the option is deprecated, replace it with the current equivalent. Also, ensure the syntax around the option is correct, including brackets and commas.
This guide will help you check for common problems that cause the log ” Unrecognized option [{}]; expecting [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: parser, plugin.
Log Context
Log “Unrecognized option [{}]; expecting [{}]” class name is LogicalPlanBuilder.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
// check runs Token key = sequenceTermCtx.key; if (key != null) { String k = key.getText(); if (RUNS.equals(k) == false) { throw new ParsingException(source(key); "Unrecognized option [{}]; expecting [{}]"; k; RUNS); } } int runs = 1; NumberContext numberCtx = sequenceTermCtx.number();