GetStorageAccountAsync is making a Storage Account management API cal… #238
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.
GetStorageAccountAsync was making a Storage Account management API call, these calls are restricted at 800 requests / 5 minutes.
This threshold is different from calls made to the storage account data plane to fetch blobs/containers et.al. and those have a much higher threshold.
My fix basically constructs the same BlobSvc client by obtaining the storage account name from the asset property itself and then I reuse it through a concurrent dictionary (for thread safety).
Here is the list of Storage account management APIs that are subject to that 800 requests / 5 mins throttling limit - https://learn.microsoft.com/en-us/azure/role-based-access-control/resource-provider-operations#microsoftstorage