I just ran into an issue exacerbated by a load balancer where the initial pull would succeed, but subsequent layer pulls would fail and return 0-bytes for random layers.
Turns out that using request.byte_stream() (or request.bytes()) will succeed regardless of HTTP status, so error responses would still "succeed" with no data returned.
I just ran into an issue exacerbated by a load balancer where the initial pull would succeed, but subsequent layer pulls would fail and return 0-bytes for random layers.
Turns out that using
request.byte_stream()
(orrequest.bytes()
) will succeed regardless of HTTP status, so error responses would still "succeed" with no data returned.This PR turns non-success responses into errors.