question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Failures to restore from Azure artifacts feeds due to throttling

See original GitHub issue

We have started seeing some throttling errors when attempting to restore NuGet packages from Azure Artifacts that manifest like this:

/root/coresetup/.dotnet/sdk/3.0.100/NuGet.targets(123,5): error : Failed to download package 'transport.runtime.linux-musl-x64.Microsoft.NETCore.Jit.3.1.0-preview1.19504.3' from 'https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/9c2ea29a-00e0-4bae-b470-161fdab1f360/nuget/v3/flat2/transport.runtime.linux-musl-x64.microsoft.netcore.jit/3.1.0-preview1.19504.3/transport.runtime.linux-musl-x64.microsoft.netcore.jit.3.1.0-preview1.19504.3.nupkg'.
/root/coresetup/.dotnet/sdk/3.0.100/NuGet.targets(123,5): error : Response status code does not indicate success: 429 (Request was blocked due to exceeding usage of resource 'Concurrency' in namespace 'IPAddress'. For more information on why your request was blocked, see the topic "Rate limits" on the Microsoft Web site (https://go.microsoft.com/fwlink/?LinkId=823950). (DevOps Activity ID: 5B41D91F-6ED5-41D1-814B-0328F8821422)).
##[error]/root/coresetup/.dotnet/sdk/3.0.100/NuGet.targets(123,5): error : Failed to download package 'transport.runtime.linux-musl-x64.Microsoft.NETCore.Jit.3.1.0-preview1.19504.3' from 'https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/9c2ea29a-00e0-4bae-b470-161fdab1f360/nuget/v3/flat2/transport.runtime.linux-musl-x64.microsoft.netcore.jit/3.1.0-preview1.19504.3/transport.runtime.linux-musl-x64.microsoft.netcore.jit.3.1.0-preview1.19504.3.nupkg'.

This does not appear to be causing widespread failures so far, but as we increase our reliance on these feeds, we’re starting to get more reports.

Example builds where this has been seen: https://dev.azure.com/dnceng/public/_build/results?buildId=398862 https://dnceng.visualstudio.com/internal/_build/results?buildId=384184

All unauthenticated NuGet requests are getting thrown into the same throttling bucket by AzDO, and due to the multi-feed lookup for each package that NuGet does, depending on how many feeds you have in your NuGet config, and how many packages you need to restore, the problem gets worse.

The short term suggestions from the AzDO team are:

  • Reduce the number of feeds used (Their docs mention we should only be using a single feed for restores)
  • Use private feeds instead of public, that way NuGet won’t make unauthenticated requests
  • Change NuGet.config to limit the maxHttpRequestsPerSource:
    <config>
        <add key='maxHttpRequestsPerSource' value='2' />
    </config>

We are still in talks with the AzDO team as these workarounds will end up requiring a lot of changes to our infrastructure for this.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:19 (18 by maintainers)

github_iconTop GitHub Comments

2reactions
markwilkiecommented, May 5, 2020

Ok - AzDO is saying they’ve fixed it (for real) now.

1reaction
riarenascommented, Apr 13, 2020

The new limits seem to have stuck. Haven’t seen any more throttling during restore since the limits were raised. I’ll remove this from FR.

The AzDO team said they are evaluating more sustainable options to handle our load. I’ll keep this open because I think if we onboarded another big repo to only using azdo feeds, we’d start seeing this again.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Nuget restore not working with artifact feed in Azure Devops
NuGet restore fails 404 from feed on another project in same organization. When using nuget restore from a pipeline the feed inside a...
Read more >
Azure DevOps pipeline, NuGet restore error
I have two projects in DevOps, project A has a build pipeline with NuGet task to restore package from artifact feed in project...
Read more >
Troubleshooting throttling errors in Azure - Virtual Machines
Azure Compute requests may be throttled at a subscription and on a per-region basis to help with the overall performance of the service....
Read more >
Pipeline caching - Azure
Use pipeline artifacts when you need to take specific files produced in one job and share them with other jobs (and these other...
Read more >
Package Restore from Azure Artifacts failing : r/azuredevops
I'm just going to start using the public feeds from now on. Azure Artifacts are proving to be unreliable. Disappointing. Anyone else seeing...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found