diff options
author | Erik Johnston <erik@matrix.org> | 2020-07-27 14:10:53 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-27 14:10:53 +0100 |
commit | 84d099ae1192af0f38d26f9a32e38bd4c0ad304e (patch) | |
tree | 525ead94bf5b196a855948896964b0242f6cecfa /synapse/app | |
parent | Remove hacky error handling for inlineDeferreds. (#7950) (diff) | |
download | synapse-84d099ae1192af0f38d26f9a32e38bd4c0ad304e.tar.xz |
Fix typing replication not being handled on master (#7959)
Handling of incoming typing stream updates from replication was not hooked up on master, effecting set ups where typing was handled on a different worker. This is really only a problem if the master process is also handling sync requests, which is unlikely for those that are at the stage of moving typing off. The other observable effect is that if a worker restarts or a replication connect drops then the typing worker will issue a `POSITION typing`, triggering master process to try and stream *all* typing updates from position 0. Fixes #7907
Diffstat (limited to 'synapse/app')
-rw-r--r-- | synapse/app/generic_worker.py | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/synapse/app/generic_worker.py b/synapse/app/generic_worker.py index c1b76d827b..ec0dbddb8c 100644 --- a/synapse/app/generic_worker.py +++ b/synapse/app/generic_worker.py @@ -87,7 +87,6 @@ from synapse.replication.tcp.streams import ( ReceiptsStream, TagAccountDataStream, ToDeviceStream, - TypingStream, ) from synapse.rest.admin import register_servlets_for_media_repo from synapse.rest.client.v1 import events @@ -644,7 +643,6 @@ class GenericWorkerReplicationHandler(ReplicationDataHandler): super(GenericWorkerReplicationHandler, self).__init__(hs) self.store = hs.get_datastore() - self.typing_handler = hs.get_typing_handler() self.presence_handler = hs.get_presence_handler() # type: GenericWorkerPresence self.notifier = hs.get_notifier() @@ -681,11 +679,6 @@ class GenericWorkerReplicationHandler(ReplicationDataHandler): await self.pusher_pool.on_new_receipts( token, token, {row.room_id for row in rows} ) - elif stream_name == TypingStream.NAME: - self.typing_handler.process_replication_rows(token, rows) - self.notifier.on_new_event( - "typing_key", token, rooms=[row.room_id for row in rows] - ) elif stream_name == ToDeviceStream.NAME: entities = [row.entity for row in rows if row.entity.startswith("@")] if entities: |