Can’t collect more than – How to solve this Elasticsearch error

Opster Team

July-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you try running the Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many configuration errors.

To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them.

Take a self-guided product tour to see for yourself (no registration required).

This guide will help you check for common problems that cause the log ” Can’t collect more than ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: search and aggregations.

Log Context

Log “Can’t collect more than [“classname  is BucketsAggregator.java We extracted the following from Elasticsearch source code for those seeking an in-depth context :

long totalOrdsToCollect = 0;
 for (int ordIdx = 0; ordIdx < owningBucketOrds.length; ordIdx++) {
 totalOrdsToCollect += bucketOrds.bucketsInOrd(owningBucketOrds[ordIdx]);
 }
 if (totalOrdsToCollect > Integer.MAX_VALUE) {
 throw new AggregationExecutionException("Can't collect more than [" + Integer.MAX_VALUE
 + "] buckets but attempted [" + totalOrdsToCollect + "]");
 }
 long[] bucketOrdsToCollect = new long[(int) totalOrdsToCollect];
 int b = 0;
 for (int ordIdx = 0; ordIdx < owningBucketOrds.length; ordIdx++) {

 

Watch product tour

Try AutoOps to find & fix Elasticsearch problems

Analyze Your Cluster
Skip to content