Skip to content

guard geoline aggregation from parents aggegator that emit empty buckets #79129

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 19, 2021

Conversation

iverase
Copy link
Contributor

@iverase iverase commented Oct 14, 2021

This change prevents an AIOOBE that might happen with the provided bucket to build the aggregation is bigger that the max bucket that contains data. It fixes as well an issue when serialising empty aggregations with null values for sort and line values.

fixes #79128

@iverase iverase added >bug :Analytics/Geo Indexing, search aggregations of geo points and shapes v8.0.0 v7.16.0 v7.15.2 labels Oct 14, 2021
@elasticmachine elasticmachine added the Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) label Oct 14, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-analytics-geo (Team:Analytics)

@iverase iverase requested a review from nik9000 October 14, 2021 08:58
Copy link
Member

@nik9000 nik9000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix looks good.

I'll open up an issue to maybe flip the fix - it's pretty cruel to ask a sub-aggregation to build the bucket for something it's never seen. Aggs like filters know how many docs its seen and could switch to buildEmpty for 0 sized buckets.

@nik9000
Copy link
Member

nik9000 commented Oct 18, 2021

I opened #79381 for later.

@iverase iverase merged commit 5474d4c into elastic:master Oct 19, 2021
@iverase iverase deleted the geolinebug branch October 19, 2021 05:17
iverase added a commit to iverase/elasticsearch that referenced this pull request Oct 19, 2021
…ets (elastic#79129)

This change prevents an AIOOBE that might happen with the provided bucket to build the aggregation is 
bigger that the max bucket that contains data.
iverase added a commit to iverase/elasticsearch that referenced this pull request Oct 19, 2021
…ets (elastic#79129)

This change prevents an AIOOBE that might happen with the provided bucket to build the aggregation is 
bigger that the max bucket that contains data.
@elasticsearchmachine
Copy link
Collaborator

💚 Backport successful

Status Branch Result
7.x
7.15

elasticsearchmachine pushed a commit that referenced this pull request Oct 19, 2021
…ets (#79129) (#79419)

This change prevents an AIOOBE that might happen with the provided bucket to build the aggregation is 
bigger that the max bucket that contains data.
elasticsearchmachine pushed a commit that referenced this pull request Oct 19, 2021
…ets (#79129) (#79418)

This change prevents an AIOOBE that might happen with the provided bucket to build the aggregation is 
bigger that the max bucket that contains data.
weizijun added a commit to weizijun/elasticsearch that referenced this pull request Oct 19, 2021
* upstream/master: (34 commits)
  Add extensionName() to security extension (elastic#79329)
  More robust and consistent allowAll indicesAccessControl (elastic#79415)
  Fix circuit breaker leak in MultiTerms aggregation (elastic#79362)
  guard geoline aggregation from parents aggegator that emit empty buckets (elastic#79129)
  Vector tiles: increase the size of the envelope used to clip geometries (elastic#79030)
  Revert "[ML] Add queue_capacity setting to start deployment API (elastic#79369)" (elastic#79374)
  Convert token service license object to LicensedFeature (elastic#79284)
  [TEST] Fix ShardPathTests for MDP (elastic#79393)
  Fix fleet search API with no checkpints (elastic#79400)
  Reduce BWC version for transient settings (elastic#79396)
  EQL: Rename a test class for eclipse (elastic#79254)
  Use search_coordination threadpool in field caps (elastic#79378)
  Use query param instead of a system property for opting in for new cluster health response code (elastic#79351)
  Add new kNN search endpoint (elastic#79013)
  Disable BWC tests
  Convert auditing license object to LicensedFeature (elastic#79280)
  Update BWC versions after backport of elastic#78551
  Enable InstantiatingObjectParser to pass context as a first argument (elastic#79206)
  Move xcontent filtering tests (elastic#79298)
  Update links to Fleet/Agent docs (elastic#79303)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Analytics/Geo Indexing, search aggregations of geo points and shapes >bug Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) v7.15.2 v7.16.0 v8.0.0-beta1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Geoline aggregator might throw an AIOOBE if parent aggregation emits empty buckets
5 participants