[8.2.0] Don't fetch empty digest on failure status in FetchBlobResponse
#25277
+53
−0
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.
When the
GrpcRemoteDownloader
receives aFetchBlobResponse
with an error status (instead of a connection level status error), it must fail and fall back to the HTTP downloader if configured instead of ignoring the status and attempting to fetch the (usually empty) digest from the cache. The previous behavior could result in errors being masked and resulting in an empty file being downloaded if the remote cache accepts emptyDigest
messages.Closes #25244.
PiperOrigin-RevId: 725963696
Change-Id: I9f643b944b9fff9264c72f41485564ff1fab71d9
Commit e0cd2f2