module Backup::Backblaze::RetryLookup
Public Instance Methods
retry_dependencies()
click to toggle source
# File lib/backup/backblaze/retry_lookup.rb, line 81 def retry_dependencies @retry_dependencies ||= begin # didn't want to fight with prolog to generate uniq values here, so just let ruby do it. retries = Hash.new{|h,k| h[k] = Set.new} retries[:b2_upload_part].merge([:b2_get_upload_part_url]) retries[:b2_upload_part].merge([:b2_get_upload_part_url]) retries[:b2_upload_part].merge([:b2_get_upload_part_url]) retries[:b2_upload_part].merge([:b2_get_upload_part_url]) retries[:b2_get_upload_part_url].merge([:b2_authorize_account]) retries[:b2_get_upload_part_url].merge([:b2_authorize_account]) retries[:b2_get_upload_url].merge([:b2_authorize_account]) retries[:b2_get_upload_url].merge([:b2_authorize_account]) retries[:b2_upload_file].merge([:b2_get_upload_url]) retries[:b2_upload_file].merge([:b2_get_upload_url]) retries[:b2_upload_file].merge([:b2_get_upload_url]) retries[:b2_upload_file].merge([:b2_get_upload_url]) retries[:b2_list_buckets].merge([:b2_authorize_account]) retries[:b2_list_buckets].merge([:b2_authorize_account]) retries[:b2_list_file_names].merge([:b2_authorize_account]) retries[:b2_list_file_names].merge([:b2_authorize_account]) retries[:b2_delete_file_version].merge([:b2_authorize_account]) retries[:b2_delete_file_version].merge([:b2_authorize_account]) retries[:b2_finish_large_file].merge([:b2_authorize_account]) retries[:b2_finish_large_file].merge([:b2_authorize_account]) retries[:b2_start_large_file].merge([:b2_authorize_account]) retries[:b2_start_large_file].merge([:b2_authorize_account]) retries end end
retry_sequence(api_call, http_status, code)
click to toggle source
# File lib/backup/backblaze/retry_lookup.rb, line 27 def retry_sequence api_call, http_status, code case [api_call.to_sym, http_status, code.to_sym] when [:b2_upload_part, 401, :expired_auth_token] then [:b2_get_upload_part_url,:b2_upload_part] when [:b2_upload_part, 401, :bad_auth_token] then [:b2_get_upload_part_url,:b2_upload_part] when [:b2_upload_part, 408, Any] then [:b2_get_upload_part_url,:b2_upload_part] when [:b2_upload_part, 500..599, Any] then [:b2_get_upload_part_url,:b2_upload_part] when [:b2_upload_part, 429, Any] then [:b2_upload_part] when [:b2_get_upload_part_url, 401, :expired_auth_token] then [:b2_authorize_account,:b2_get_upload_part_url] when [:b2_get_upload_part_url, 401, :bad_auth_token] then [:b2_authorize_account,:b2_get_upload_part_url] when [:b2_get_upload_part_url, 408, Any] then [:b2_get_upload_part_url] when [:b2_get_upload_part_url, 429, Any] then [:b2_get_upload_part_url] when [:b2_get_upload_part_url, 500..599, Any] then [:b2_get_upload_part_url] when [:b2_get_upload_url, 401, :expired_auth_token] then [:b2_authorize_account,:b2_get_upload_url] when [:b2_get_upload_url, 401, :bad_auth_token] then [:b2_authorize_account,:b2_get_upload_url] when [:b2_get_upload_url, 408, Any] then [:b2_get_upload_url] when [:b2_get_upload_url, 429, Any] then [:b2_get_upload_url] when [:b2_get_upload_url, 500..599, Any] then [:b2_get_upload_url] when [:b2_upload_file, 401, :expired_auth_token] then [:b2_get_upload_url,:b2_upload_file] when [:b2_upload_file, 401, :bad_auth_token] then [:b2_get_upload_url,:b2_upload_file] when [:b2_upload_file, 408, Any] then [:b2_get_upload_url,:b2_upload_file] when [:b2_upload_file, 500..599, Any] then [:b2_get_upload_url,:b2_upload_file] when [:b2_upload_file, 429, Any] then [:b2_upload_file] when [:b2_authorize_account, 408, Any] then [:b2_authorize_account] when [:b2_authorize_account, 429, Any] then [:b2_authorize_account] when [:b2_authorize_account, 500..599, Any] then [:b2_authorize_account] when [:b2_list_buckets, 401, :expired_auth_token] then [:b2_authorize_account,:b2_list_buckets] when [:b2_list_buckets, 401, :bad_auth_token] then [:b2_authorize_account,:b2_list_buckets] when [:b2_list_buckets, 408, Any] then [:b2_list_buckets] when [:b2_list_buckets, 429, Any] then [:b2_list_buckets] when [:b2_list_buckets, 500..599, Any] then [:b2_list_buckets] when [:b2_list_file_names, 401, :expired_auth_token] then [:b2_authorize_account,:b2_list_file_names] when [:b2_list_file_names, 401, :bad_auth_token] then [:b2_authorize_account,:b2_list_file_names] when [:b2_list_file_names, 408, Any] then [:b2_list_file_names] when [:b2_list_file_names, 429, Any] then [:b2_list_file_names] when [:b2_list_file_names, 500..599, Any] then [:b2_list_file_names] when [:b2_delete_file_version, 401, :expired_auth_token] then [:b2_authorize_account,:b2_delete_file_version] when [:b2_delete_file_version, 401, :bad_auth_token] then [:b2_authorize_account,:b2_delete_file_version] when [:b2_delete_file_version, 408, Any] then [:b2_delete_file_version] when [:b2_delete_file_version, 429, Any] then [:b2_delete_file_version] when [:b2_delete_file_version, 500..599, Any] then [:b2_delete_file_version] when [:b2_finish_large_file, 401, :expired_auth_token] then [:b2_authorize_account,:b2_finish_large_file] when [:b2_finish_large_file, 401, :bad_auth_token] then [:b2_authorize_account,:b2_finish_large_file] when [:b2_finish_large_file, 408, Any] then [:b2_finish_large_file] when [:b2_finish_large_file, 429, Any] then [:b2_finish_large_file] when [:b2_finish_large_file, 500..599, Any] then [:b2_finish_large_file] when [:b2_start_large_file, 401, :expired_auth_token] then [:b2_authorize_account,:b2_start_large_file] when [:b2_start_large_file, 401, :bad_auth_token] then [:b2_authorize_account,:b2_start_large_file] when [:b2_start_large_file, 408, Any] then [:b2_start_large_file] when [:b2_start_large_file, 429, Any] then [:b2_start_large_file] when [:b2_start_large_file, 500..599, Any] then [:b2_start_large_file] else [] # No retry. eg 400 and most 401 should just fail immediately end end