View Source NervesHubLink.Downloader.RetryConfig (nerves_hub_link v2.5.2)
Configuration structure for how the Downloader server will handle disconnects, errors, timeouts etc
Summary
Types
time in milliseconds between chunks of data received
that once elapsed will trigger a retry. This event counts
towards the max_disconnects
counter
maximum number of disconnects. After this limit is reached the download will be stopped and will no longer be retried
maximum time in milliseconds that a download can exist for. after this amount of time has elapsed, the download is canceled and the download process will crash
time in milliseconds to wait before attempting to retry a download
worst case download speed specified in bytes per second. This is
used to calculate the "worst case" download timeout. it is meant to
fail faster than waiting for max_timeout
to elapse
Types
@type idle_timeout() :: non_neg_integer()
time in milliseconds between chunks of data received
that once elapsed will trigger a retry. This event counts
towards the max_disconnects
counter
@type max_disconnects() :: non_neg_integer()
maximum number of disconnects. After this limit is reached the download will be stopped and will no longer be retried
@type max_timeout() :: non_neg_integer()
maximum time in milliseconds that a download can exist for. after this amount of time has elapsed, the download is canceled and the download process will crash
@type t() :: %NervesHubLink.Downloader.RetryConfig{ idle_timeout: idle_timeout(), max_disconnects: max_disconnects(), max_timeout: max_timeout(), time_between_retries: time_between_retries(), worst_case_download_speed: worst_case_download_speed() }
@type time_between_retries() :: non_neg_integer()
time in milliseconds to wait before attempting to retry a download
@type worst_case_download_speed() :: non_neg_integer()
worst case download speed specified in bytes per second. This is
used to calculate the "worst case" download timeout. it is meant to
fail faster than waiting for max_timeout
to elapse