learn repository retrycount configuration option
Allow retrying the download of messages more than twice. Signed-off-by: Luke Kenneth Casson Leighton <lkcl@lkcl.net> Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
This commit is contained in:
parent
dda27e0962
commit
dab5737265
@ -1270,6 +1270,26 @@ remoteuser = username
|
||||
#"cvlc --play-and-stop --play-and-exit /path/to/sound/file.mp3 > /dev/null 2>&1")
|
||||
|
||||
|
||||
# This option stands in the [Repository RemoteExample] section. [TESTING]
|
||||
#
|
||||
# Operating under extreme network conditions (China) network connectivity
|
||||
# especially for SSL can be so bad and so slow that absolutely every possible
|
||||
# kind of connectivity error that can occur does occur.
|
||||
#
|
||||
# Rather than have offlineimap exit on errors it may be preferable to have it
|
||||
# simply retry fetching of messages dozens of times. The alternative is to
|
||||
# restart offlineimap in a constant loop, which may involve using significant
|
||||
# CPU cycles (if the repository is large) to load up the UID database again.
|
||||
#
|
||||
# This option is best utilised in combination with socktimeout, which catches
|
||||
# instances of interference by e.g. the GFW at the TCP layer, as well as China
|
||||
# ISPs simply not coping.
|
||||
#
|
||||
# Default value: retrycount = 2
|
||||
#
|
||||
#retrycount = 2
|
||||
|
||||
|
||||
# This option stands in the [Repository RemoteExample] section.
|
||||
#
|
||||
# If offlineiamp is having troubles to download some UIDS, it's possible to get
|
||||
|
@ -71,7 +71,7 @@ class GmailFolder(IMAPFolder):
|
||||
(probably severity MESSAGE) if e.g. no message with
|
||||
this UID could be found.
|
||||
"""
|
||||
data = self._fetch_from_imap(str(uid), 2)
|
||||
data = self._fetch_from_imap(str(uid), self.retrycount)
|
||||
|
||||
# data looks now e.g.
|
||||
#[('320 (X-GM-LABELS (...) UID 17061 BODY[] {2565}','msgbody....')]
|
||||
|
@ -55,6 +55,9 @@ class IMAPFolder(BaseFolder):
|
||||
# self.ui is set in BaseFolder.
|
||||
self.imap_query = ['BODY.PEEK[]']
|
||||
|
||||
# number of times to retry fetching messages
|
||||
self.retrycount = self.repository.getconfint('retrycount', 2)
|
||||
|
||||
fh_conf = self.repository.account.getconf('filterheaders', '')
|
||||
self.filterheaders = [h for h in re.split(r'\s*,\s*', fh_conf) if h]
|
||||
|
||||
@ -305,7 +308,7 @@ class IMAPFolder(BaseFolder):
|
||||
this UID could be found.
|
||||
"""
|
||||
|
||||
data = self._fetch_from_imap(str(uid), 2)
|
||||
data = self._fetch_from_imap(str(uid), self.retrycount)
|
||||
|
||||
# Data looks now e.g.
|
||||
# [('320 (UID 17061 BODY[] {2565}','msgbody....')]
|
||||
|
Loading…
Reference in New Issue
Block a user