Bug #3419
closed
[SDKs] Perl client library should retry failed API requests after errors like Gateway Timeout
Added by Tom Clegg over 10 years ago.
Updated about 8 years ago.
Description
Most importantly, crunch-job must try hard to avoid throwing away a long-running job due to a transient failure.
- Subject changed from [SDK] Ruby and CLI libraries should retry failed API requests after errors like Gateway Timeout to [SDK] Client libraries should retry failed API requests after errors like Gateway Timeout
- Description updated (diff)
- Subject changed from [SDK] Client libraries should retry failed API requests after errors like Gateway Timeout to [SDKs] Client libraries should retry failed API requests after errors like Gateway Timeout
- Category set to SDKs
I think it is desirable that we create a separate bug for each of the client libraries. This helps with reviewing, testing. That way we can also divvy up the work more effectively.
- Target version set to Arvados Future Sprints
- Target version changed from Arvados Future Sprints to 2014-10-08 sprint
- Description updated (diff)
- Subject changed from [SDKs] Client libraries should retry failed API requests after errors like Gateway Timeout to [SDKs] Perl client library should retry failed API requests after errors like Gateway Timeout
- Description updated (diff)
- Assigned To set to Brett Smith
I think the general approach is:
- Add a
num_retries
argument to Arvados::Request::process_request. It handles the actual retry loop (a la Python), backing off between requests that should be retried.
- Add
num_retries
arguments to Arvados::ResourceMethod::execute and the save, update_attributes, and reload methods of Arvados::ResourceProxy. These should simply be propagated down to the appropriate lower calls, so they reach Arvados::Request. This should be a "keyword argument" in the methods that already take those.
It's not expressly specified but I figure this story wants to see crunch-job use this support.
- Target version changed from 2014-10-08 sprint to Arvados Future Sprints
- Assigned To changed from Brett Smith to Tom Morris
- Status changed from New to Closed
- Assigned To deleted (
Tom Morris)
- Target version deleted (
Arvados Future Sprints)
Done at some point in the past
Also available in: Atom
PDF