Skip to content

Introduce contract to know whether InternalAggs have computed results or not #34903

@costin

Description

@costin

It's a common concern for aggregations to not compute any results (empty bucket or null values) yet there is no general way to discover that when interacting with them. One needs to look into their internals but even then there are aggs where it's ambiguous whether any computation has happened or if it's just the default value (as aggs use primitives, there's no null).
Take SUM and MAX; if there's nothing to compute, SUM returns 0 while MAX returns Double.POSITIVE_INFINITY. The latter might be used but 0 is a valid sum so the caller has no idea whether its meaning is null or actually 0.

See #34896

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions