-
Notifications
You must be signed in to change notification settings - Fork 25.6k
Save memory when parent and child are not on top #57892
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
Conversation
Reworks the `parent` and `child` aggregation are not at the top level using the optimization from elastic#55873. Instead of wrapping all non-top-level `parent` and `child` aggregators we now handle being a child aggregator in the aggregator, specifically by adding recording which global ordinals show up in the parent and then checking if they match the child.
|
Pinging @elastic/es-analytics-geo (:Analytics/Aggregations) |
| * to just those listed in ordsToCollect, but we don't have a data | ||
| * structure that maps a primitive long to a list of primitive | ||
| * longs. | ||
| */ |
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 is pretty much the algorithm that we used to use. It ain't perfect, but it gets the job done.
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.
👍
|
run elasticsearch-ci/packaging-sample-unix-docker |
| * to just those listed in ordsToCollect, but we don't have a data | ||
| * structure that maps a primitive long to a list of primitive | ||
| * longs. | ||
| */ |
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.
👍
|
Thanks @talevy ! |
Reworks the `parent` and `child` aggregation are not at the top level using the optimization from elastic#55873. Instead of wrapping all non-top-level `parent` and `child` aggregators we now handle being a child aggregator in the aggregator, specifically by adding recording which global ordinals show up in the parent and then checking if they match the child.
Reworks the `parent` and `child` aggregation are not at the top level using the optimization from #55873. Instead of wrapping all non-top-level `parent` and `child` aggregators we now handle being a child aggregator in the aggregator, specifically by adding recording which global ordinals show up in the parent and then checking if they match the child.
In elastic#57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
In #57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
In elastic#57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
In elastic#57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
In #57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
In #57892 I broke *some* sub-aggregations inside of the `parent` and `child` aggregator, specifically any sub-aggregations that do work in the `postCollect` phase. This fixes it by delaying the post collect phase of aggs under `parent` and `child` until `beforeBuildingBuckets` because, well, we haven't done *any* collection until after that phase.
Reworks the
parentandchildaggregation are not at the top levelusing the optimization from #55873. Instead of wrapping all
non-top-level
parentandchildaggregators we now handle being achild aggregator in the aggregator, specifically by adding recording
which global ordinals show up in the parent and then checking if they
match the child.