Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Delete completes to-device messages earlier in /sync (#10124)
Browse files Browse the repository at this point in the history
I hope this will improve
#9564.
  • Loading branch information
richvdh authored Jun 7, 2021
1 parent a0cd8ae commit fa1db8f
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 10 deletions.
1 change: 1 addition & 0 deletions changelog.d/10124.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Work to improve the responsiveness of `/sync` requests.
21 changes: 11 additions & 10 deletions synapse/handlers/sync.py
Original file line number Diff line number Diff line change
Expand Up @@ -315,6 +315,17 @@ async def _wait_for_sync_for_user(
if context:
context.tag = sync_type

# if we have a since token, delete any to-device messages before that token
# (since we now know that the device has received them)
if since_token is not None:
since_stream_id = since_token.to_device_key
deleted = await self.store.delete_messages_for_device(
sync_config.user.to_string(), sync_config.device_id, since_stream_id
)
logger.debug(
"Deleted %d to-device messages up to %d", deleted, since_stream_id
)

if timeout == 0 or since_token is None or full_state:
# we are going to return immediately, so don't bother calling
# notifier.wait_for_events.
Expand Down Expand Up @@ -1230,16 +1241,6 @@ async def _generate_sync_entry_for_to_device(
since_stream_id = int(sync_result_builder.since_token.to_device_key)

if since_stream_id != int(now_token.to_device_key):
# We only delete messages when a new message comes in, but that's
# fine so long as we delete them at some point.

deleted = await self.store.delete_messages_for_device(
user_id, device_id, since_stream_id
)
logger.debug(
"Deleted %d to-device messages up to %d", deleted, since_stream_id
)

messages, stream_id = await self.store.get_new_messages_for_device(
user_id, device_id, since_stream_id, now_token.to_device_key
)
Expand Down

0 comments on commit fa1db8f

Please sign in to comment.