Add interrupted policy to MessageChannelPartitionHandler polling #5168
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.
While testing shutdown handling, I found MessageChannelPartitionHandler would cause issues as the poller indefinitely poll until the steps complete. If the manager happens to be shutting down, this causes the job to become stuck.
This solution is a shim to better support graceful shutdown; I don't believe its a proper fix since, in my opinion, MessageChannelPartitionHandler should be refactored into something like TaskletStep which can manage repository updates during an execution lifecycle, however that requires a larger design / discussion.
For our use case, I plan on overriding the policy to throw JobInterruptedException when the pod is being shutdown.