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

t()

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()
}
Link to this type

time_between_retries()

View Source
@type time_between_retries() :: non_neg_integer()

time in milliseconds to wait before attempting to retry a download

Link to this type

worst_case_download_speed()

View Source
@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