-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Use exponential backoff for DNS updates #10996
Conversation
Shouldn't we use some exponential backoff or something for this operation? If the ratelimit is caused by external factors, say that there are many more tests running in the same region in the same account (by other installers/projects?), increasing to 30 just makes matter worse. We would try less often, but still risk being pulled into a rate limit. |
I agree that exponential backoff is a better idea, though I don't get how increasing to 30s makes the matter worse. |
If a user has some other system installed that triggers the ratelimit this change makes things worse because it will fail on just as many calls, but we make the calls less frequently. So it will need a lot more time to get a successful attempt through. |
If a user has another system installed that triggers the rate limit somehow, nothing will help, not even exponential backoff will help. This way at least we reduce the chance of this happening because of too many requests. |
/retest |
c8cf7d2
to
d468bc2
Compare
@olemarkus Does this look more appealing now? |
d468bc2
to
04aca04
Compare
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.
Certainly. Thanks for this, @hakman
Thanks @olemarkus. I want to fix one small issue before merging. |
04aca04
to
057397f
Compare
057397f
to
631b43b
Compare
There should be random jitter added to the backoff to avoid the thundering herd problem |
I don't think we have many updates in parallel from the same cluster. Other clusters should not matter that much as they are already quite random. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: olemarkus, rifelpet The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
…-upstream-release-1.19 Automated cherry pick of #10996: Use exponential backoff for DNS updates
…-upstream-release-1.20 Automated cherry pick of #10996: Use exponential backoff for DNS updates
The AWS Route53 API is severely rate-limited and makes periodic e2e tests fail. This may happen to users also, as they see DNS records not being updated quite often lately.
Not sure if AWS changed something or we're just noticing this, but there's not much that can be done except do this less often.
/cc @rifelpet @olemarkus