Note
All classes documented below are considered public and thus will not be
exposed to breaking changes. If a class from the ibm_boto3.s3.transfer
module is not documented below, it is considered internal and users
should be very cautious in directly using them because breaking changes may
be introduced from version to version of the library.
Configuration object for managed S3 transfers
multipart_threshold – The transfer size threshold for which multipart uploads, downloads, and copies will automatically be triggered.
max_concurrency – The maximum number of threads that will be
making requests to perform a transfer. If use_threads
is
set to False
, the value provided is ignored as the transfer
will only ever use the main thread.
multipart_chunksize – The partition size of each part for a multipart transfer.
num_download_attempts – The number of download attempts that will be retried upon errors with downloading an object in S3. Note that these retries account for errors that occur when streaming down the data from s3 (i.e. socket errors and read timeouts that occur after receiving an OK response from s3). Other retryable exceptions such as throttling errors and 5xx errors are already retried by ibm_botocore (this default is 5). This does not take into account the number of exceptions retried by ibm_botocore.
max_io_queue – The maximum amount of read parts that can be
queued in memory to be written for a download. The size of each
of these read parts is at most the size of io_chunksize
.
io_chunksize – The max size of each chunk in the io queue.
Currently, this is size used when read
is called on the
downloaded stream as well.
use_threads – If True, threads will be used when performing S3 transfers. If False, no threads will be used in performing transfers; all logic will be run in the main thread.
max_bandwidth – The maximum bandwidth that will be consumed in uploading and downloading file content. The value is an integer in terms of bytes per second.