Skip to content

Fix pipeline agg serialization for ccs #54282

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
Mar 30, 2020

Conversation

nik9000
Copy link
Member

@nik9000 nik9000 commented Mar 26, 2020

This fixes pipeline aggregations used in cross cluster search from an older
version of Elasticsearch to a newer version of Elasticsearch. I broke
this in #53730 when I was too aggressive in shutting off serialization
of pipeline aggs. In particular, this comes up when the coordinating
node is pre-7.8.0 and the gateway node is on or after 7.8.0.

The fix is another step down the line to remove pipeline aggregators
from the aggregation tree. Sort of. It create a new
List<PipelineAggregator> member in InternalAggregation but it is
only used for bwc serialization and it is fed by the mechanism
established in #53730 to read the pipelines from the

This fixes pipeline aggregations used in cross cluster search from an older
version of Elasticsearch to a newer version of Elasticsearch. I broke
this in elastic#53730 when I was too aggressive in shutting off serialization
of pipeline aggs. In particular, this comes up when the coordinating
node is pre-7.8.0 and the gateway node is on or after 7.8.0.

The fix is another step down the line to remove pipeline aggregators
from the aggregation tree. Sort of. It create a new
`List<PipelineAggregator>` member in `InternalAggregation` *but* it is
only used for bwc serialization and it is fed by the mechanism
established in elastic#53730 to read the pipelines from the
@elasticmachine
Copy link
Collaborator

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

@nik9000
Copy link
Member Author

nik9000 commented Mar 26, 2020

I've labeled this non-issue because it fixes a bug in an unreleased version.

@nik9000 nik9000 mentioned this pull request Mar 26, 2020
3 tasks
Copy link
Contributor

@polyfractal polyfractal left a comment

Choose a reason for hiding this comment

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

For posterity, we chatted about this offline, and while neither of us are stoked about the mutability aspect, it might be the least-bad option :) Nik might see if a decorator/wrapper thing is better as a followup, but it might not so this should be fine as we expect it to be mostly temporary.

👍

@nik9000
Copy link
Member Author

nik9000 commented Mar 30, 2020

Thanks @polyfractal !

@nik9000 nik9000 merged commit 13bdbca into elastic:master Mar 30, 2020
nik9000 added a commit to nik9000/elasticsearch that referenced this pull request Mar 30, 2020
This fixes pipeline aggregations used in cross cluster search from an older
version of Elasticsearch to a newer version of Elasticsearch. I broke
this in elastic#53730 when I was too aggressive in shutting off serialization
of pipeline aggs. In particular, this comes up when the coordinating
node is pre-7.8.0 and the gateway node is on or after 7.8.0.

The fix is another step down the line to remove pipeline aggregators
from the aggregation tree. Sort of. It create a new
`List<PipelineAggregator>` member in `InternalAggregation` *but* it is
only used for bwc serialization and it is fed by the mechanism
established in elastic#53730 to read the pipelines from the
nik9000 added a commit that referenced this pull request Apr 2, 2020
This fixes pipeline aggregations used in cross cluster search from an older
version of Elasticsearch to a newer version of Elasticsearch. I broke
this in #53730 when I was too aggressive in shutting off serialization
of pipeline aggs. In particular, this comes up when the coordinating
node is pre-7.8.0 and the gateway node is on or after 7.8.0.

The fix is another step down the line to remove pipeline aggregators
from the aggregation tree. Sort of. It create a new
`List<PipelineAggregator>` member in `InternalAggregation` *but* it is
only used for bwc serialization and it is fed by the mechanism
established in #53730 to read the pipelines from the
nik9000 added a commit to nik9000/elasticsearch that referenced this pull request Apr 2, 2020
nik9000 added a commit to nik9000/elasticsearch that referenced this pull request Apr 2, 2020
I derped out on a last minute bug fix when backporting elastic#54282 and it
only causes the tests to fail about half the time. So I didn't catch
it until after merging. Great! This fixes it.
nik9000 added a commit that referenced this pull request Apr 2, 2020
I derped out on a last minute bug fix when backporting #54282 and it
only causes the tests to fail about half the time. So I didn't catch
it until after merging. Great! This fixes it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants