-
Notifications
You must be signed in to change notification settings - Fork 25.3k
ES|QL: Account for CB memory when loading fields from source #129998
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
base: main
Are you sure you want to change the base?
ES|QL: Account for CB memory when loading fields from source #129998
Conversation
0517d57
to
e7afc90
Compare
e7afc90
to
e140119
Compare
@@ -585,6 +585,56 @@ public void testFetchTooManyBigFields() throws IOException { | |||
assertCircuitBreaks(attempt -> fetchManyBigFields(attempt * 500)); | |||
} | |||
|
|||
public void testStatsOnLargeKeywords() throws IOException { |
There was a problem hiding this comment.
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.
Pinging @elastic/es-analytical-engine (Team:Analytics) |
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.