-
Notifications
You must be signed in to change notification settings - Fork 25.1k
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
[Deprecation] Refine Transform Destination Index message #122192
[Deprecation] Refine Transform Destination Index message #122192
Conversation
When we detect that a Transform writes to the index and the index is incompatible with the next version, change the message, detail, and URL to help the user take the necessary steps to migrate the destination index.
Pinging @elastic/ml-core (Team:ML) |
var transforms = transformIdsForIndex(indexMetadata, indexToTransformIds); | ||
if (transforms.isEmpty() == false) { | ||
return new DeprecationIssue( | ||
DeprecationIssue.Level.WARNING, |
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 probably fine as a warning - this message is emitted when there is a write block on the index, which will pause the transform indefinitely. The Transform will be effectively disabled anyway, and the user should probably delete or reset the Transform (which we can put in the link)
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.
LGTM
Please add some verb to the PR title e.g.: "Refine Transform destination index message"?
Also, I cannot see the file with PR title generated. Do you know why it could be missing?
} else { | ||
return new DeprecationIssue( | ||
DeprecationIssue.Level.WARNING, | ||
"Old index with a compatibility version < 9.0 Has Been Ignored", |
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.
Why capital letters in "Has Been Ignored"?
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.
I do not know, that's what previously existed. We can edit it probably?
"https://www.elastic.co/guide/en/elasticsearch/reference/master/migrating-9.0.html" | ||
+ "#breaking_90_transform_destination_index", | ||
Strings.format( | ||
"Transforms [%s] write to this index with version [%s] and cannot be supported as read-only in 9.0", |
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.
I'm not sure a user would know what to do after reading this. It sounds a bit like if they upgrade to 9.0 their cluster might break because this incompatible index isn't ignored and "cannot be supported as read-only in 9.0" Whereas I think we want the takeaway from this message to be "it's fine, you can upgrade, but just beaware that your transforms aren't working"
Maybe something like:
This read-only index was created in version 7.17 and will be supported as a read-only index in 9.0. The following transforms are no longer able to write to this index [%s].
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.
I agree to change the messaging based on @rudolf's input above. I'm not familiar with the subject, but would it be possible to add something actionable to the end of the message, something that the user can do to mitigate/solve the issue? For example:
This index was created in version 7.17 and will be supported as a read-only index in 9.0. The following transforms are no longer able to write to this index [%s]. Refer to the migration guide to learn more about how to handle your transforms destination indices."
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.
Copy LGTM!
"https://www.elastic.co/guide/en/elasticsearch/reference/master/migrating-9.0.html" | ||
+ "#breaking_90_transform_destination_index", | ||
Strings.format( | ||
"This index was created in version [%s] and will be supported as a read-only index in 9.0. The following " |
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.
will be supported as a read-only index in 9.0
if (transforms.isEmpty() == false) {
doesn't mean this index is read-only. As a CRITICAL
deprecation the user still needs to do something to make this index safe for upgrade.
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.
We spoke over slack, I'll summarize the discussion here:
I agree that the messaging doesn't quite make sense. We reworded it to highlight:
- the index was created in version %s
- this index is not compatible in the next version of elasticsearch, and the user needs to take some action before upgrading or else the cluster will break
- there are transforms writing to this index, so the user will need to take different or additional actions to resolve this for transforms
Much of what we can say will go in the supplemental document supplied by the URL.
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.
🥳
💔 Backport failed
You can use sqren/backport to manually backport by running |
…122509) When we detect that a Transform writes to the index and the index is incompatible with the next version, change the message, detail, and URL to help the user take the necessary steps to migrate the destination index.
…) (#122524) When we detect that a Transform writes to the index and the index is incompatible with the next version, change the message, detail, and URL to help the user take the necessary steps to migrate the destination index.
…ic#122192) (elastic#122524) When we detect that a Transform writes to the index and the index is incompatible with the next version, change the message, detail, and URL to help the user take the necessary steps to migrate the destination index.
Close elastic/kibana-team#1293 Related elastic/elasticsearch#122192 <img width="503" alt="Screenshot 2025-02-17 at 14 38 53" src="https://github.com/user-attachments/assets/06131482-8547-4296-bd7e-e1c7c879fb89" />
Close elastic/kibana-team#1293 Related elastic/elasticsearch#122192 <img width="503" alt="Screenshot 2025-02-17 at 14 38 53" src="https://github.com/user-attachments/assets/06131482-8547-4296-bd7e-e1c7c879fb89" /> (cherry picked from commit c6e0eeb)
When we detect that a Transform writes to the index and the index is incompatible with the next version, change the message, detail, and URL to help the user take the necessary steps to migrate the destination index.