版本: 6.8-7.15
简而言之,当您尝试在 Elasticsearch 中为某个聚合添加全局子聚合时,就会出现此错误。全局聚合应该位于顶层,因为它们不与任何特定字段关联。要解决此问题,您可以删除全局子聚合或将其移动到顶层。或者,您可以用适合您数据分析需求的非全局子聚合来替换全局子聚合。
日志上下文 #
日志 “Aggregation [” + parent.name() + “] cannot have a global " + “sub-aggregation [” 类名是 GlobalAggregatorFactory.java。我们从 Elasticsearch 源代码中提取了以下内容,以便那些寻求深入上下文的人参考:
@Override
public Aggregator createInternal(Aggregator parent; CardinalityUpperBound cardinality; Mapmetadata) throws IOException {
if (parent != null) {
throw new AggregationExecutionException("Aggregation [" + parent.name() + "] cannot have a global " + "sub-aggregation [" + name
+ "]. Global aggregations can only be defined as top level aggregations");
}
if (cardinality != CardinalityUpperBound.ONE) {
throw new AggregationExecutionException("Aggregation [" + name() + "] must have cardinality 1 but was [" + cardinality + "]");
}





