[Task Manager] Task Type deprecation isn't possible #96581
Labels
estimate:needs-research
Estimated as too large and requires research to break down into workable issues
Feature:Task Manager
resilience
Issues related to Platform resilience in terms of scale, performance & backwards compatibility
Team:ResponseOps
Label for the ResponseOps team (formerly the Cases and Alerting teams)
context
We don't have a good mechanism for deprecating Task Types.
When a Task Type is removed in a version, it is possible to end up with old tasks that are left over from older versions and these never get cleaned up.
A recent change meant that this no longer breaks Task manager (and it proactively marks them as
unrecognizable
), but we don't have a good mechanism for proactively handling those tasks.This is especially pertinent with the upcoming change where we're moving work that used to be in tasks, out of them. When a user upgrades a Kibana env that has several queued up tasks, we would expect those tasks to still be executed after the upgrade, even if we don't intent on supporting those going forward.
This is even more pertinent with potential introduction of "temporary" Task Types (such as the one proposed here), which we only need for a couple of minors to address a problem, but might not be relevant after wards.
proposal
This isn't the only way to address this, so feel free to take another approach, but what I have in mind is something like this:
deprecated
, but they still provide the Task Type implementation.The nice part about this approach is that developers could actually provide a "clean up" implementation (instead of the original implementation) when they deprecate the task type - so it could be used to gracefully clean up the legacy task, or unschedule it if it's a recurring task.
The text was updated successfully, but these errors were encountered: