📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 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) {