|
|
|
@ -305,12 +305,10 @@ func (c *cacheObjects) GetObjectNInfo(ctx context.Context, bucket, object string |
|
|
|
|
return bkReader, bkErr |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if rs != nil { |
|
|
|
|
if rs != nil && !dcache.enableRange { |
|
|
|
|
go func() { |
|
|
|
|
// if range caching is disabled, download entire object.
|
|
|
|
|
if !dcache.enableRange { |
|
|
|
|
rs = nil |
|
|
|
|
} |
|
|
|
|
rs = nil |
|
|
|
|
// fill cache in the background for range GET requests
|
|
|
|
|
bReader, bErr := c.InnerGetObjectNInfoFn(GlobalContext, bucket, object, rs, h, lockType, opts) |
|
|
|
|
if bErr != nil { |
|
|
|
@ -337,7 +335,7 @@ func (c *cacheObjects) GetObjectNInfo(ctx context.Context, bucket, object string |
|
|
|
|
go func() { |
|
|
|
|
putErr := dcache.Put(ctx, bucket, object, |
|
|
|
|
io.LimitReader(pipeReader, bkReader.ObjInfo.Size), |
|
|
|
|
bkReader.ObjInfo.Size, nil, ObjectOptions{ |
|
|
|
|
bkReader.ObjInfo.Size, rs, ObjectOptions{ |
|
|
|
|
UserDefined: userDefined, |
|
|
|
|
}, false) |
|
|
|
|
// close the write end of the pipe, so the error gets
|
|
|
|
|