New issue
Advanced search Search tips

Issue 902731 link

Starred by 3 users

Issue metadata

Status: Untriaged
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Use of If-Range by partial validation of sparse entry harmful.

Project Member Reported by morlovich@chromium.org, Nov 7

Issue description

Right now, if we are validating a missing piece of a sparse-format entry, we send an If-Range request. That works fine if it succeeds with a 206,
but if it fails with a 200, that's basically just wasting the user's bandwidth, because we can't actually write out a 200 into a 206-entry, 
so we end up either:
1) If we already delivered some bytes, failing the request, and throwing out the 200.
2) If we didn't deliver any bytes, restarting, and throwing out the 200.

Given we don't actually use the body, it would be better to just use If-Match/If-Not-Modified-Since instead and just get a 412.

However, we should still use If-Range for resume of truncated entries, since that's a non-sparse-format entry, so can store a 200 properly.

 

Sign in to add a comment