summary refs log tree commit diff
path: root/synapse/app/homeserver.py
diff options
context:
space:
mode:
authorShay <hillerys@element.io>2021-11-30 10:12:18 -0800
committerGitHub <noreply@github.com>2021-11-30 10:12:18 -0800
commit70cbb1a5e311f609b624e3fae1a1712db639c51e (patch)
tree4739879593a329054d0df2b02464d6d7e534440e /synapse/app/homeserver.py
parentExpose worker & homeserver as entrypoints in `setup.py` (#11449) (diff)
downloadsynapse-70cbb1a5e311f609b624e3fae1a1712db639c51e.tar.xz
Don't start Synapse master process if `worker_app` is set (#11416)
* Add check to catch syanpse master process starting when workers are configured

* add test to verify that starting master process with worker config raises error

* newsfragment

* specify config.worker.worker_app in check

* update test

* report specific config option that triggered the error

Co-authored-by: reivilibre <oliverw@matrix.org>

* clarify error message

Co-authored-by: reivilibre <oliverw@matrix.org>

Co-authored-by: reivilibre <oliverw@matrix.org>
Diffstat (limited to 'synapse/app/homeserver.py')
-rw-r--r--synapse/app/homeserver.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py
index 52541faab2..dd76e07321 100644
--- a/synapse/app/homeserver.py
+++ b/synapse/app/homeserver.py
@@ -358,6 +358,13 @@ def setup(config_options: List[str]) -> SynapseHomeServer:
         # generating config files and shouldn't try to continue.
         sys.exit(0)
 
+    if config.worker.worker_app:
+        raise ConfigError(
+            "You have specified `worker_app` in the config but are attempting to start a non-worker "
+            "instance. Please use `python -m synapse.app.generic_worker` instead (or remove the option if this is the main process)."
+        )
+        sys.exit(1)
+
     events.USE_FROZEN_DICTS = config.server.use_frozen_dicts
     synapse.util.caches.TRACK_MEMORY_USAGE = config.caches.track_memory_usage