summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--changelog.d/8798.bugfix1
-rwxr-xr-xsynctl7
2 files changed, 8 insertions, 0 deletions
diff --git a/changelog.d/8798.bugfix b/changelog.d/8798.bugfix
new file mode 100644

index 0000000000..9bdb2b51ea --- /dev/null +++ b/changelog.d/8798.bugfix
@@ -0,0 +1 @@ +Fix a bug where synctl could spawn duplicate copies of a worker. Contributed by Waylon Cude. diff --git a/synctl b/synctl
index 9395ebd048..cfa9cec0c4 100755 --- a/synctl +++ b/synctl
@@ -358,6 +358,13 @@ def main(): for worker in workers: env = os.environ.copy() + # Skip starting a worker if its already running + if os.path.exists(worker.pidfile) and pid_running( + int(open(worker.pidfile).read()) + ): + print(worker.app + " already running") + continue + if worker.cache_factor: os.environ["SYNAPSE_CACHE_FACTOR"] = str(worker.cache_factor)