版本: 7.16-8.6
简而言之,当向 Elasticsearch 中的特定字段传递了无法识别的值时,就会发生此错误。该字段只接受某些预定义的值,而提供的输入与其中任何一个都不匹配。要解决此问题,您应该首先查阅文档或代码,了解该字段接受哪些值。然后,确保您尝试输入的值与这些可接受的值之一匹配。如果该值是动态传递的,请添加检查以确保只使用有效的值。
日志上下文 #
日志 “Unknown value [” + v + “] for field [” + name + “] - accepted values are " 的类名是 FieldMapper.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入理解的人参考:
} catch (IllegalArgumentException e) {
throw new MapperParsingException("Unknown value [" + o + "] for field [" + name + "] - accepted values are " + values);
}
}; initializer; XContentBuilder::field; Objects::toString).addValidator(v -> {
if (v != null && values.contains(v) == false) {
throw new MapperParsingException("Unknown value [" + v + "] for field [" + name + "] - accepted values are " + values);
}
});
} /**





