anchor.diff:      max_download_buffer_size, 20971520) % 20 MB
   ).
   
  --record(download_ctx, {
  +-type read_block_size() :: non_neg_integer().
  +-type encoding_fun() :: fun((Data :: binary()) -> EncodedData :: binary()).
  +
  +-record(streaming_ctx, {
       file_size :: file_meta:size(),
       file_handle :: lfm:handle(),
  -    read_block_size :: http_streamer:read_block_size(),
  +    read_block_size :: read_block_size(),
       max_read_blocks_count :: non_neg_integer(),
  -    encoding_fun :: fun((Data :: binary()) -> EncodedData :: binary()),
  +    encoding_fun :: encoding_fun(),
       tar_stream = undefined :: undefined | tar_utils:stream()
   }).
  +
  +-type streaming_ctx() :: #streaming_ctx{}.
   
   % TODO VFS-6597 - update cowboy to at least ver 2.7 to fix streaming big files
   % Due to lack of backpressure mechanism in cowboy when streaming files it must
  
positive.code:             NextSendRetryDelay = send_data_chunk(BytesToSend, Req, MaxReadBlocksCount, SendRetryDelay),
              stream_bytes_range_internal(
                  {From + DataSize, To},
                  DownloadCtx#download_ctx{file_handle = NewFileHandle, tar_stream = FinalTarStream},
                  Req, NextSendRetryDelay, ReadBytes + DataSize
              )
      end.
  
negative.code: ) ->
      tar_utils:stream() | undefined | no_return().
  stream_bytes_range(FileHandle, FileSize, Range, Req, EncodingFun, ReadBlockSize, TarStream) ->
      stream_bytes_range_internal(Range, #streaming_ctx{
          file_size = FileSize,
          file_handle = FileHandle,
          read_block_size = ReadBlockSize,
  