diff options
author | Erik Johnston <erikj@jki.re> | 2017-02-01 15:56:16 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-01 15:56:16 +0000 |
commit | 96355d2f2f343085a51217e1544694e50a274a4b (patch) | |
tree | 85993103acc1b45214bacf3d47c6b67af5dd09e5 /synapse/util | |
parent | Wake sync up for device changes (diff) | |
parent | Correctly raise exceptions for ratelimitng. Ratelimit on 401 (diff) | |
download | synapse-96355d2f2f343085a51217e1544694e50a274a4b.tar.xz |
Merge pull request #1871 from matrix-org/erikj/ratelimit_401
Correctly raise exceptions for ratelimitng. Ratelimit on 401
Diffstat (limited to 'synapse/util')
-rw-r--r-- | synapse/util/retryutils.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/synapse/util/retryutils.py b/synapse/util/retryutils.py index b94ae369cf..153ef001ad 100644 --- a/synapse/util/retryutils.py +++ b/synapse/util/retryutils.py @@ -129,11 +129,13 @@ class RetryDestinationLimiter(object): # APIs may expect to never received e.g. a 404. It's important to # handle 404 as some remote servers will return a 404 when the HS # has been decommissioned. + # If we get a 401, then we should probably back off since they + # won't accept our requests for at least a while. + # 429 is us being aggresively rate limited, so lets rate limit + # ourselves. if exc_val.code == 404 and self.backoff_on_404: valid_err_code = False - elif exc_val.code == 429: - # 429 is us being aggresively rate limited, so lets rate limit - # ourselves. + elif exc_val.code in (401, 429): valid_err_code = False elif exc_val.code < 500: valid_err_code = True |