-
Notifications
You must be signed in to change notification settings - Fork 353
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
Add more retries to symbols and sourcelink validation #7364
Add more retries to symbols and sourcelink validation #7364
Conversation
For sourcelink validation, this change introduces retries. For symbols validation, this change expands retry scenarios to any failure, not just 503s, as sometimes, dotnet-symbol fails with no real indication why, and we want to retry on all scenarios. Also updates the logging, and separates out the files being downloaded via dotnet-symbol to separate directories based on msdl/symweb, so we don't think we have those files on both when they only exist on one, as our method for confirming if they were downloaded just checked to see if certain paths exist.
@MattGal Can you take another look? |
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.
Seems like it'd work, left a few more comments.
@@ -16,6 +16,8 @@ $global:RepoFiles = @{} | |||
# Maximum number of jobs to run in parallel | |||
$MaxParallelJobs = 16 | |||
|
|||
$MaxRetry = 5 |
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.
nit: This variable could be plural since it represents a count of things.
$NumFailedLinks++ | ||
else { | ||
break | ||
} |
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.
Not touched in this PR, but looking down (~162?) there's a catch-all catch; could that log the exception it hits?
For sourcelink validation, this change introduces retries.
For symbols validation, this change expands retry scenarios to any failure, not just 503s, as sometimes, dotnet-symbol fails with no real indication why, and we want to retry on all scenarios. Also updates the logging, and separates out the files being downloaded via dotnet-symbol to separate directories based on msdl/symweb, so we don't think we have those files on both when they only exist on one, as our method for confirming if they were downloaded just checked to see if certain paths exist.
Test run on runtime in validate-dotnet: https://dev.azure.com/dnceng/internal/_build/results?buildId=1131182&view=results
To double check: