Add clear deprecation around legacy role settings#71143
Merged
jasontedor merged 3 commits intoelastic:masterfrom Apr 1, 2021
Merged
Add clear deprecation around legacy role settings#71143jasontedor merged 3 commits intoelastic:masterfrom
jasontedor merged 3 commits intoelastic:masterfrom
Conversation
Collaborator
|
Pinging @elastic/es-core-infra (Team:Core/Infra) |
594d2b2 to
50776d8
Compare
We've deprecated the legacy role settings. Individually, when you use such a setting, you will get an individual log message informing you that you've used a legacy role setting. What the deprecation does not tell you though, is the equivalent node.roles setting that you should be using to achieve identical functionality to what you have today. This creates a bad user experience. Suppose that you've configured a node (e.g., node.data: true, node.ingest: false, node.master: false, node.remote_cluster_client: false), but never explicitly set the legacy node.transform setting. In this case, we'll use the default value of true. You see the deprecation message informing you that node.data, node.ingest, node.master, and node.remote_cluster_client are deprecated. So you do some searching in the docs and discover the node.roles setting. So you dutifully set node.roles: [data] because this is the only legacy role setting that you've enabled. Well, now you're having a bad time because this will also disable the transform role, which was implicitly enabled. This commit provides a cleared deprecation message in this case: legacy role settings [node.data, node.ingest, node.remote_cluster_client, node.master] are deprecated, use [node.roles=[transform, data_frozen, data_hot, data_content, data_warm, data, data_cold] This should help users transition between the legacy role settings and the new role setting.
50776d8 to
77136ef
Compare
Member
Author
|
@elasticmachine update branch |
Member
Author
|
The failing test here is #71147, so I've updated my branch to pull in the latest commits that address the failures there. |
jasontedor
added a commit
that referenced
this pull request
Apr 1, 2021
We've deprecated the legacy role settings. Individually, when you use such a setting, you will get an individual log message informing you that you've used a legacy role setting. What the deprecation does not tell you though, is the equivalent node.roles setting that you should be using to achieve identical functionality to what you have today. This creates a bad user experience. Suppose that you've configured a node (e.g., node.data: true, node.ingest: false, node.master: false, node.remote_cluster_client: false), but never explicitly set the legacy node.transform setting. In this case, we'll use the default value of true. You see the deprecation message informing you that node.data, node.ingest, node.master, and node.remote_cluster_client are deprecated. So you do some searching in the docs and discover the node.roles setting. So you dutifully set node.roles: [data] because this is the only legacy role setting that you've enabled. Well, now you're having a bad time because this will also disable the transform role, which was implicitly enabled. This commit provides a cleared deprecation message in this case: legacy role settings [node.data, node.ingest, node.remote_cluster_client, node.master] are deprecated, use [node.roles=[transform, data_frozen, data_hot, data_content, data_warm, data, data_cold] This should help users transition between the legacy role settings and the new role setting.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
We've deprecated the legacy role settings. Individually, when you use such a setting, you will get an individual log message informing you that you've used a legacy role setting. What the deprecation does not tell you though, is the equivalent
node.rolessetting that you should be using to achieve identical functionality to what you have today. This creates a bad user experience. Suppose that you've configured a node (e.g.,node.data: true,node.ingest: false,node.master: false,node.remote_cluster_client: false), but never explicitly set the legacynode.transformsetting. In this case, we'll use the default value oftrue. You see the deprecation message informing you thatnode.data,node.ingest,node.master, andnode.remote_cluster_clientare deprecated. So you do some searching in the docs and discover thenode.rolessetting. So you dutifully setnode.roles: [data]because this is the only legacy role setting that you've enabled. Well, now you're having a bad time because this will also disable the transform role, which was implicitly enabled. This commit provides a cleared deprecation message in this case:This should help users transition between the legacy role settings and the new role setting.
Relates #54998