elastic/elasticsearch · error · IllegalArgumentException
[size] must be a positive integer: [{size}]
Error message
[size] must be a positive integer: [{size}] What it means
Error "[size] must be a positive integer: [{size}]" thrown in elastic/elasticsearch.
Source
Thrown at modules/aggregations/src/main/java/org/elasticsearch/aggregations/pipeline/BucketSortPipelineAggregationBuilder.java:120
@Override
protected void doWriteTo(StreamOutput out) throws IOException {
out.writeCollection(sorts);
out.writeVInt(from);
out.writeOptionalVInt(size);
gapPolicy.writeTo(out);
}
public BucketSortPipelineAggregationBuilder from(int from) {
if (from < 0) {
throw new IllegalArgumentException("[" + FROM.getPreferredName() + "] must be a non-negative integer: [" + from + "]");
}
this.from = from;
return this;
}
public BucketSortPipelineAggregationBuilder size(Integer size) {
if (size != null && size <= 0) {
throw new IllegalArgumentException("[" + SIZE.getPreferredName() + "] must be a positive integer: [" + size + "]");
}
this.size = size;
return this;
}
public BucketSortPipelineAggregationBuilder gapPolicy(GapPolicy gapPolicy) {
if (gapPolicy == null) {
throw new IllegalArgumentException("[" + GAP_POLICY.getPreferredName() + "] must not be null: [" + name + "]");
}
this.gapPolicy = gapPolicy;
return this;
}
@Override
protected PipelineAggregator createInternal(Map<String, Object> metadata) {
return new BucketSortPipelineAggregator(name, sorts, from, size, gapPolicy, metadata);
}
View on GitHub (pinned to db6a809a66)
When it happens
Trigger: Thrown at modules/aggregations/src/main/java/org/elasticsearch/aggregations/pipeline/BucketSortPipelineAggregationBuilder.java:120 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of elastic/elasticsearch@db6a809a66 (2026-08-12).
Data as JSON: /api/errors/a728002bef11d9fc.
Report an issue: GitHub.