diff options
author | Richard van der Hoff <1389908+richvdh@users.noreply.github.com> | 2019-09-12 12:59:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-12 12:59:43 +0100 |
commit | 0388beafe48d1ae9c30565c37b8902b9aa0b8fe2 (patch) | |
tree | f5e9944606f8639a01c10ee54a2a21646c2d860b | |
parent | Merge pull request #6024 from matrix-org/dbkr/fix_sso_fallback_login (diff) | |
download | synapse-0388beafe48d1ae9c30565c37b8902b9aa0b8fe2.tar.xz |
Fix bug in calculating the federation retry backoff period (#6025)
This was intended to introduce an element of jitter; instead it gave you a 30/60 chance of resetting to zero.
-rw-r--r-- | changelog.d/6025.bugfix | 1 | ||||
-rw-r--r-- | synapse/util/retryutils.py | 5 |
2 files changed, 4 insertions, 2 deletions
diff --git a/changelog.d/6025.bugfix b/changelog.d/6025.bugfix new file mode 100644 index 0000000000..50d7f9aab5 --- /dev/null +++ b/changelog.d/6025.bugfix @@ -0,0 +1 @@ +Fix bug in calculating the federation retry backoff period. \ No newline at end of file diff --git a/synapse/util/retryutils.py b/synapse/util/retryutils.py index 5b16a81617..33263fe20f 100644 --- a/synapse/util/retryutils.py +++ b/synapse/util/retryutils.py @@ -193,8 +193,9 @@ class RetryDestinationLimiter(object): else: # We couldn't connect. if self.retry_interval: - self.retry_interval *= RETRY_MULTIPLIER - self.retry_interval *= int(random.uniform(0.8, 1.4)) + self.retry_interval = int( + self.retry_interval * RETRY_MULTIPLIER * random.uniform(0.8, 1.4) + ) if self.retry_interval >= MAX_RETRY_INTERVAL: self.retry_interval = MAX_RETRY_INTERVAL |