-
Notifications
You must be signed in to change notification settings - Fork 28.7k
Improve Gradle retry logic #96554
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
Improve Gradle retry logic #96554
Conversation
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.
More retries w/ exponential backoff sgtm.
// The maximum number of Gradle retries. | ||
// When a build fails due to a network failure, this is the maximum number | ||
// of times that the build is re-attempted. | ||
const int kMaxGradleRetries = 10; |
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 effectively a timeout, which I think we should take the opportunity to remove. The way this could work is by letting the binary exponential backoff increase the backoff up to some maximum point (like 10s), and probably some time before then, use the tool's usual message about an operation taking longer than expected. The long operation message could be accompanied by the error text from gradle.
In practice if all these retries fail, CI will hit the job timeout, or the user will ctrl-c the process, which is how we handle other situations like this.
I lowered the priority of the issue. I will land this as soon as I can though. |
PTAL @zanderso |
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.
Sorry for the delay. lgtm.
This pull request is not suitable for automatic merging in its current state.
|
This pull request is not suitable for automatic merging in its current state.
|
@dnfield do you know if the flutter_svg test flaky or failing consistently? https://cirrus-ci.com/task/5417192308080640 |
Alternatively, try to rebase this patch to master to make sure the test harness picks up the right engine version. |
It looks like there's a rfw failure in there too |
Huh, my original comment never got posted - I was going to say that I think these are failing because of changes made to work with skParagraph, and maybe one image got missed - but I think what's really going on is the need to rebase this PR. |
(You will need to specifically rebase - merge isn't enough based on how the logic in that script works) |
d5d2c88
to
5cf2d3d
Compare
That worked. Thanks |
Related issue: #96550
Helps:
#96790
#96792
Improves the Gradle retry logic, so it retries up to 10 times after a first failure, and uses exponential backoff.
This is useful for network failures.