Merge pull request #1317 from copumpkin/nix-retry-write-error

Add CURLE_WRITE_ERROR as a transient error condition
This commit is contained in:
Eelco Dolstra 2017-04-10 15:58:17 +02:00 committed by GitHub
commit 8945a0ea2c

View file

@ -300,6 +300,11 @@ struct CurlDownloader : public Downloader
|| httpStatus == 504 || httpStatus == 522 || httpStatus == 524 || httpStatus == 504 || httpStatus == 522 || httpStatus == 524
|| code == CURLE_COULDNT_RESOLVE_HOST || code == CURLE_COULDNT_RESOLVE_HOST
|| code == CURLE_RECV_ERROR || code == CURLE_RECV_ERROR
// this seems to occur occasionally for retriable reasons, and shows up in an error like this:
// curl: (23) Failed writing body (315 != 16366)
|| code == CURLE_WRITE_ERROR
// this is a generic SSL failure that in some cases (e.g., certificate error) is permanent but also appears in transient cases, so we consider it retryable // this is a generic SSL failure that in some cases (e.g., certificate error) is permanent but also appears in transient cases, so we consider it retryable
|| code == CURLE_SSL_CONNECT_ERROR || code == CURLE_SSL_CONNECT_ERROR
#if LIBCURL_VERSION_NUM >= 0x073200 #if LIBCURL_VERSION_NUM >= 0x073200