Skip to content

Conversation

@luigidellaquila
Copy link
Contributor

Improving circuit breaker memory accounting when extracting field values (TEXT, typically) from _source.

With this change we try to approximate the memory used, based on the source size.

@luigidellaquila luigidellaquila force-pushed the heap_attack_large_strings branch 5 times, most recently from 0517d57 to e7afc90 Compare July 1, 2025 08:38
@luigidellaquila luigidellaquila force-pushed the heap_attack_large_strings branch from e7afc90 to e140119 Compare July 1, 2025 09:00
@luigidellaquila luigidellaquila marked this pull request as ready for review July 1, 2025 09:03
@elasticsearchmachine elasticsearchmachine added the needs:triage Requires assignment of a team area label label Jul 1, 2025
assertCircuitBreaks(attempt -> fetchManyBigFields(attempt * 500));
}

public void testStatsOnLargeKeywords() throws IOException {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This test is terribly flaky.
Sometimes the query succeeds without circuit breaking, sometimes it fails with OOM.
Running the query multiple times makes the thing even worse.
The minimum memory differences between stateful and serverless make it very hard to tune.

@elasticsearchmachine elasticsearchmachine added Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) and removed needs:triage Requires assignment of a team area label labels Jul 1, 2025
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-analytical-engine (Team:Analytics)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Analytics/ES|QL AKA ESQL >non-issue Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) v9.3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants