Skip to content
Snippets Groups Projects
Commit b3bda8a7 authored by Paul "LeoNerd" Evans's avatar Paul "LeoNerd" Evans
Browse files

Don't let the remote offline serial list grow arbitrarily large

parent 8a785c30
Branches
Tags
No related merge requests found
......@@ -36,6 +36,9 @@ metrics = synapse.metrics.get_metrics_for(__name__)
# Don't bother bumping "last active" time if it differs by less than 60 seconds
LAST_ACTIVE_GRANULARITY = 60*1000
# Keep no more than this number of offline serial revisions
MAX_OFFLINE_SERIALS = 1000
# TODO(paul): Maybe there's one of these I can steal from somewhere
def partition(l, func):
......@@ -722,6 +725,8 @@ class PresenceHandler(BaseHandler):
0,
(self._user_cachemap_latest_serial, set([user.to_string()]))
)
while len(self._remote_offline_serials) > MAX_OFFLINE_SERIALS:
self._remote_offline_serials.pop() # remove the oldest
del self._user_cachemap[user]
for poll in content.get("poll", []):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment