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

版本: 6.8-8.9

简而言之,当 Elasticsearch 无法确定索引中字段的数据类型时,就会出现此错误。这可能是由于映射定义不正确或缺失造成的。要解决此问题,可以在映射中为字段显式定义数据类型,或者确保索引的数据与预期的数据类型相匹配。如果该字段不是必需的,也可以考虑将其从索引中删除。

日志上下文 #

日志 “Cannot determine datatype for [{}]” 的类名是 Intervals.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入了解上下文的人参考:

case MONTH -> INTERVAL_MONTH;
case DAY -> INTERVAL_DAY;
case HOUR -> INTERVAL_HOUR;
case MINUTE -> INTERVAL_MINUTE;
case SECOND -> INTERVAL_SECOND;
default -> throw new ParsingException(source; "Cannot determine datatype for [{}]"; leading);
};
} else {
if (leading == TimeUnit.YEAR && trailing == TimeUnit.MONTH) {
return INTERVAL_YEAR_TO_MONTH;
}