Page:
Download Types
Clone
15
Download Types
Scott E. Graves edited this page 2025-02-27 12:35:06 -06:00
Table of Contents
Download Type Details
repertory
supports 3 different modes for reading and writing files: default
, direct
, and ring_buffer
.
The PreferredDownloadType
setting in config.json
determines which of these modes is preferred. This does not guarantee the mode will always be chosen, as repertory
will choose an appropriate mode based on the type of file operation being performed. If a file is currently open via a read-only download type and a request to write is performed, the file will automatically be changed to default
mode without any interruptions to file i/o.
Default
- In
default
mode, a file of equal size is fully allocated within thecache
directory. - File i/o occurs in 8MiB chunks for files that are not currently in cache.
- Even though writes occur within 1 or more 8MiB chunks, the file will not be scheduled for upload until all chunks have been downloaded.
- If
repertory
is unmounted prior to an upload completing, it will be re-scheduled the next time the location is mounted.
- This mode will be forced if any request to write is performed.
- This mode is read/write.
Direct
- In
direct
mode, files are read directly from the corresponding provider without any local caching. - An in-memory ring buffer is used to cache up to 5 8MiB chunks.
- This mode is read-only.
Ring buffer
- In
ring_buffer
mode, a fixed-size file (default 512MiB) is allocated within thebuffer
directory. - This mode will cache up to 512MiB of a file locally preventing the need to fully allocate a file for read operations.
- This mode is only chosen when the actual file size is greater than the ring-buffer size.
- This mode is read-only.