版本: 6.8-8.9
简要来说,当 Elasticsearch 接收到无法解析或识别的日期时,就会出现此错误。这可能是由于日期格式不正确、时区问题,或者在需要日期的地方传递了非日期值造成的。要解决此问题,请确保日期格式与 Elasticsearch 期望的格式匹配。如果使用自定义日期格式,请确保其定义正确。此外,还要检查是否存在时区差异。最后,验证你的数据,确保没有在需要日期的地方传递非日期值。
日志上下文 #
日志 “Invalid date received; {}” 的类名是 ExpressionBuilder.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入背景的人员参考:
Source source = source(ctx);
// parse yyyy-MM-dd (time optional but is set to 00:00:00.000 because of the conversion to DATE
try {
return new Literal(source; asDateOnly(string); SqlDataTypes.DATE);
} catch (DateTimeParseException ex) {
throw new ParsingException(source; "Invalid date received; {}"; ex.getMessage());
}
} @Override
public Literal visitTimeEscapedLiteral(TimeEscapedLiteralContext ctx) {





