Convert an HTTP status code to a loop control flag.
Pass this method a numeric HTTP status code. It returns True if
the code indicates success, None if it indicates temporary
failure, and False otherwise. You can use this as the
success_check for a RetryLoop.
Implementation details:
* Any 2xx result returns True.
* A select few status codes, or any malformed responses, return None.
422 Unprocessable Entity is in this category. This may not meet the
letter of the HTTP specification, but the Arvados API server will
use it for various server-side problems like database connection
errors.
* Everything else returns False. Note that this includes 1xx and
3xx status codes. They don't indicate success, and you can't
retry those requests verbatim.
|