diff options
author | Erik Johnston <erik@matrix.org> | 2020-05-22 16:11:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-22 16:11:35 +0100 |
commit | e5c67d04dbe5ed45d659e826a5dfcd5044a4e374 (patch) | |
tree | 0ee1f865349d9fb3a6b215001f3c7ac3b7c0552b /synapse/handlers/message.py | |
parent | Return 200 OK for all OPTIONS requests (#7534) (diff) | |
download | synapse-e5c67d04dbe5ed45d659e826a5dfcd5044a4e374.tar.xz |
Add option to move event persistence off master (#7517)
Diffstat (limited to 'synapse/handlers/message.py')
-rw-r--r-- | synapse/handlers/message.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index f445e2aa2a..ea25f0515a 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -366,10 +366,11 @@ class EventCreationHandler(object): self.notifier = hs.get_notifier() self.config = hs.config self.require_membership_for_aliases = hs.config.require_membership_for_aliases + self._instance_name = hs.get_instance_name() self.room_invite_state_types = self.hs.config.room_invite_state_types - self.send_event_to_master = ReplicationSendEventRestServlet.make_client(hs) + self.send_event = ReplicationSendEventRestServlet.make_client(hs) # This is only used to get at ratelimit function, and maybe_kick_guest_users self.base_handler = BaseHandler(hs) @@ -835,8 +836,9 @@ class EventCreationHandler(object): success = False try: # If we're a worker we need to hit out to the master. - if self.config.worker_app: - result = await self.send_event_to_master( + if self.config.worker.writers.events != self._instance_name: + result = await self.send_event( + instance_name=self.config.worker.writers.events, event_id=event.event_id, store=self.store, requester=requester, @@ -902,9 +904,9 @@ class EventCreationHandler(object): """Called when we have fully built the event, have already calculated the push actions for the event, and checked auth. - This should only be run on master. + This should only be run on the instance in charge of persisting events. """ - assert not self.config.worker_app + assert self.config.worker.writers.events == self._instance_name if ratelimit: # We check if this is a room admin redacting an event so that we |