版本: 6.8-8.9
简而言之,当您尝试在 Elasticsearch 中对多种单位类型使用舍入函数时会出现此错误。舍入函数仅设计用于单一单位类型。要解决此问题,您可以将查询拆分为每个单位类型的多个查询,或者在应用舍入函数之前将所有数据转换为单一单位类型。另一种解决方案是使用脚本来处理多种单位类型的舍入。
日志上下文 #
日志 “rounding / can only be used on single unit types [{}]” 的类名是
JavaDateMathParser.java. 我们从 Elasticsearch 源代码中提取了以下内容,以便为寻求深入理解的开发者提供上下文:
}
num = Integer.parseInt(mathString.substring(numFrom; i));
}
if (round) {
if (num != 1) {
throw new ElasticsearchParseException("rounding `/` can only be used on single unit types [{}]"; mathString);
}
}
char unit = mathString.charAt(i++);
switch (unit) {
case 'y':





