--- a/hgext/remotefilelog/basestore.py Wed Jan 30 19:43:43 2019 -0500
+++ b/hgext/remotefilelog/basestore.py Thu Jan 31 11:12:59 2019 -0500
@@ -410,16 +410,18 @@
def wrapped(self, *args, **kwargs):
retrylog = self.retrylog or noop
funcname = fn.__name__
- for i in pycompat.xrange(self.numattempts):
+ i = 0
+ while i < self.numattempts:
if i > 0:
retrylog('re-attempting (n=%d) %s\n' % (i, funcname))
self.markforrefresh()
+ i += 1
try:
return fn(self, *args, **kwargs)
except KeyError:
- pass
- # retries exhausted
- retrylog('retries exhausted in %s, raising KeyError\n' %
- pycompat.sysbytes(funcname))
- raise
+ if i == self.numattempts:
+ # retries exhausted
+ retrylog('retries exhausted in %s, raising KeyError\n' %
+ pycompat.sysbytes(funcname))
+ raise
return wrapped