版本: 6.8-7.15
简而言之,当Elasticsearch由于内存限制、聚合语法错误或数据类型不兼容等问题而无法计算指定的聚合时,就会出现此错误。要解决此问题,您可以增加堆大小以提供更多内存,确保聚合语法正确,或检查正在聚合的数据类型以确保兼容性。此外,如果聚合过于复杂,可以考虑简化聚合或将其分解为更小的、可管理的部分。
日志上下文 #
日志"Merging/Reducing the aggregations failed when computing the aggregation [“类名称是 InternalMappedRareTerms.java。我们从Elasticsearch源代码中提取了以下内容,供寻求深入背景的人参考:
if (referenceTerms != null &&
referenceTerms.getClass().equals(terms.getClass()) == false &&
terms.getClass().equals(UnmappedRareTerms.class) == false) {
// control gets into this loop when the same field name against which the query is executed
// is of different types in different indices.
throw new AggregationExecutionException("Merging/Reducing the aggregations failed when computing the aggregation ["
+ referenceTerms.getName() + "] because the field you gave in the aggregation query existed as two different "
+ "types in two different indices");
}
for (B bucket : terms.getBuckets()) {
ListbucketList = buckets.computeIfAbsent(bucket.getKey(); k -> new ArrayList<>());





