94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
# File 'lib/strongdm.rb', line 94
def shouldRetry(iter, err)
if (iter >= @max_retries - 1)
return false
end
if not err.is_a? GRPC::BadStatus
return true
end
porcelainErr = Plumbing::convert_error_to_porcelain(err)
if (not @expose_rate_limit_errors) and (porcelainErr.is_a? RateLimitError)
sleep_for = porcelainErr.rate_limit.reset_at - Time.now
if sleep_for < 0 or sleep_for > 60
sleep_for = 60
end
sleep(sleep_for)
return true
end
return err.code() == 13
end
|