summary refs log tree commit diff
path: root/synapse/rest/client/sync.py
diff options
context:
space:
mode:
authorErik Johnston <erikj@element.io>2025-04-29 14:08:22 +0100
committerGitHub <noreply@github.com>2025-04-29 14:08:22 +0100
commitad140130cc3db503de3fd15aa2923417f46b700b (patch)
treec36565b61618c44292b6214456acd7c96a4bdcdb /synapse/rest/client/sync.py
parentDo not retry push during backoff period (#18363) (diff)
downloadsynapse-ad140130cc3db503de3fd15aa2923417f46b700b.tar.xz
Slight performance increase when using the ratelimiter (#18369)
See the commits.
Diffstat (limited to 'synapse/rest/client/sync.py')
-rw-r--r--synapse/rest/client/sync.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/synapse/rest/client/sync.py b/synapse/rest/client/sync.py

index 4fb9c0c8e7..bac02122d0 100644 --- a/synapse/rest/client/sync.py +++ b/synapse/rest/client/sync.py
@@ -24,7 +24,7 @@ from collections import defaultdict from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Tuple, Union from synapse.api.constants import AccountDataTypes, EduTypes, Membership, PresenceState -from synapse.api.errors import Codes, LimitExceededError, StoreError, SynapseError +from synapse.api.errors import Codes, StoreError, SynapseError from synapse.api.filtering import FilterCollection from synapse.api.presence import UserPresenceState from synapse.api.ratelimiting import Ratelimiter @@ -248,9 +248,8 @@ class SyncRestServlet(RestServlet): await self._server_notices_sender.on_user_syncing(user.to_string()) # ignore the presence update if the ratelimit is exceeded but do not pause the request - try: - await self._presence_per_user_limiter.ratelimit(requester, pause=0.0) - except LimitExceededError: + allowed, _ = await self._presence_per_user_limiter.can_do_action(requester) + if not allowed: affect_presence = False logger.debug("User set_presence ratelimit exceeded; ignoring it.") else: