From a031f04e9154e9d20003051a7e88ac2f8ad48eef Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 15 Apr 2010 19:18:43 +0530 Subject: [PATCH] News download: Retry article download if temporary failure in DNS --- src/calibre/web/fetch/simple.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/calibre/web/fetch/simple.py b/src/calibre/web/fetch/simple.py index 5e785bc29a..24b7027420 100644 --- a/src/calibre/web/fetch/simple.py +++ b/src/calibre/web/fetch/simple.py @@ -212,7 +212,8 @@ class RecursiveFetcher(object): if hasattr(err, 'code') and responses.has_key(err.code): raise FetchError, responses[err.code] if getattr(err, 'reason', [0])[0] == 104 or \ - getattr(getattr(err, 'args', [None])[0], 'errno', None) == -2: # Connection reset by peer or Name or service not know + getattr(getattr(err, 'args', [None])[0], 'errno', None) in (-2, + -3): # Connection reset by peer or Name or service not know self.log.debug('Temporary error, retrying in 1 second') time.sleep(1) with closing(open_func(url, timeout=self.timeout)) as f: