--- title: "不支持的 zero_terms_docs 值 - 如何解决此 Elasticsearch 异常" date: 2026-02-25 lastmod: 2026-02-25 description: "Elasticsearch收到无效的zero_terms_docs参数值导致的错误及解决方案" tags: ["Elasticsearch", "查询参数", "匹配查询", "参数错误"] summary: " 版本: 6.8-6.8 简而言之,当向Elasticsearch的"zero_terms_docs"参数传递无效值时,就会出现此错误。此参数用于匹配查询,它确定在未找到任何术语时该怎么做。有效值是"none"和"all"。如果传递任何其他值,就会发生此错误。要解决此问题,请确保传递给"zero_terms_docs"的值是"none"或"all"。如果您的查询不需要此参数,请考虑将其完全删除。 日志上下文 # 日志"Unsupported zero_terms_docs value [" + zeroTermsDocs + “]“的类名是 MultiMatchQueryBuilder.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: if ("none".equalsIgnoreCase(zeroTermsDocs)) { zeroTermsQuery = MatchQuery.ZeroTermsQuery.NONE; } else if ("all".equalsIgnoreCase(zeroTermsDocs)) { zeroTermsQuery = MatchQuery.ZeroTermsQuery.ALL; } else { throw new ParsingException(parser.getTokenLocation(); "Unsupported zero_terms_docs value [" + zeroTermsDocs + "]"); } } else if (AbstractQueryBuilder.NAME_FIELD.match(currentFieldName; parser.getDeprecationHandler())) { queryName = parser.text(); } else if (GENERATE_SYNONYMS_PHRASE_QUERY.match(currentFieldName; parser.getDeprecationHandler())) { autoGenerateSynonymsPhraseQuery = parser.booleanValue(); " --- > **版本:** 6.8-6.8 简而言之,当向Elasticsearch的"zero_terms_docs"参数传递无效值时,就会出现此错误。此参数用于匹配查询,它确定在未找到任何术语时该怎么做。有效值是"none"和"all"。如果传递任何其他值,就会发生此错误。要解决此问题,请确保传递给"zero_terms_docs"的值是"none"或"all"。如果您的查询不需要此参数,请考虑将其完全删除。 ## 日志上下文 日志"Unsupported zero_terms_docs value [" + zeroTermsDocs + "]"的类名是[MultiMatchQueryBuilder.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java if ("none".equalsIgnoreCase(zeroTermsDocs)) { zeroTermsQuery = MatchQuery.ZeroTermsQuery.NONE; } else if ("all".equalsIgnoreCase(zeroTermsDocs)) { zeroTermsQuery = MatchQuery.ZeroTermsQuery.ALL; } else { throw new ParsingException(parser.getTokenLocation(); "Unsupported zero_terms_docs value [" + zeroTermsDocs + "]"); } } else if (AbstractQueryBuilder.NAME_FIELD.match(currentFieldName; parser.getDeprecationHandler())) { queryName = parser.text(); } else if (GENERATE_SYNONYMS_PHRASE_QUERY.match(currentFieldName; parser.getDeprecationHandler())) { autoGenerateSynonymsPhraseQuery = parser.booleanValue(); ```