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.
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.
The intent of the jitter factor is to make sure all clients sending a request to the apiserver do not sent the request at the same time or too close to each other in time. Given the running time of all the strategies is unknown in advance, using the sliding version helps to increase the randomness.
@jklaw90 I wonder what's the motivation for making the execution time more predictable and if there are measurements which might tell us if using the non-sliding version has any benefits for the overall resource utilization (e.g. API requests) of the cluster.
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 think the use case could be for example: you expect descheduler to run every 30 minutes, but you have a giant (hypothetical) cluster where each run takes 20 minutes. If the timer doesn't start until the first run completes, that means your 2 runs will actually appear 50 minutes apart