On Mon, Feb 5, 2018 at 8:29 AM, Prem Kumar <n.premkumar...@gmail.com> wrote:
> Just want to understand the behavior of varnish if range request while
> streaming of entire object in progress. lets say client1 fetches complete
> object of size of 300 bytes (do_stream == true) and client 2 is trying to
> fetch range request 100-200 bytes at the same time. the hash functions will
> match because we are using the same url+host for hashing. .How the clients
> will be served?. Will wait for entire object to streamed or make it miss
> and fetch from origin ?. Would expect to deliver the object from origin
> instead of wait whole object may take time.
Varnish will only make range requests for pass transactions (unless
you force it in VCL) so in the case of a miss, either a complete fetch
is done or the client transactions attaches itself to an ongoing
fetch, and on the delivery side a partial response is delivered (I
think, as soon as the requested range is available in storage).
varnish-misc mailing list