--- title: "字段名不能设置 doc_values = false – 如何解决此 Elasticsearch 异常" date: 2026-01-18 lastmod: 2026-01-18 description: "当Elasticsearch中的字段设置为 doc_values = false 时会抛出此异常。本文介绍该错误的原因及解决方案。" tags: ["字段映射", "doc_values", "异常处理", "通配符字段"] summary: " 版本: 7.9-7.1 简而言之,当 Elasticsearch 中的字段将 “doc_values” 参数设置为 false 时,就会发生此错误。Elasticsearch 使用 “doc_values” 进行排序、聚合以及在脚本中使用。如果设置为 false,这些操作可能会失败。要解决此问题,您可以将 “doc_values” 设置为 true,或者删除 “doc_values” 参数,因为它默认为 true。或者,如果您不需要对此字段进行排序或聚合,可以忽略此错误。但是,请注意这可能会影响查询的性能。 日志上下文 # 日志 “The field [” + name + “] cannot have doc values = false” 的类名是 WildcardFieldMapper.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考: } @Override public Builder docValues(boolean docValues) { if (docValues == false) { throw new MapperParsingException("The field [" + name + "] cannot have doc values = false"); } return this; } @Override " --- > **版本:** 7.9-7.1 简而言之,当 Elasticsearch 中的字段将 "doc_values" 参数设置为 false 时,就会发生此错误。Elasticsearch 使用 "doc_values" 进行排序、聚合以及在脚本中使用。如果设置为 false,这些操作可能会失败。要解决此问题,您可以将 "doc_values" 设置为 true,或者删除 "doc_values" 参数,因为它默认为 true。或者,如果您不需要对此字段进行排序或聚合,可以忽略此错误。但是,请注意这可能会影响查询的性能。 日志上下文 ----------- 日志 "The field [" + name + "] cannot have doc values = false" 的类名是 [WildcardFieldMapper.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考: ```java } @Override public Builder docValues(boolean docValues) { if (docValues == false) { throw new MapperParsingException("The field [" + name + "] cannot have doc values = false"); } return this; } @Override ```