From cbee46007b7a3e47a1ceb3b365534d239e380d4d Mon Sep 17 00:00:00 2001 From: mvdbeek Date: Fri, 2 Apr 2021 14:48:04 +0200 Subject: [PATCH] Add fallback for pure python worker --- config/dev.ini | 2 +- lib/galaxy/webapps/galaxy/workers.py | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 lib/galaxy/webapps/galaxy/workers.py diff --git a/config/dev.ini b/config/dev.ini index f9d51d2748d..cc7f9a4d9bb 100644 --- a/config/dev.ini +++ b/config/dev.ini @@ -6,7 +6,7 @@ GALAXY_CONFIG_FILE=config/galaxy.yml PYTHONPATH=lib [watcher:web] -cmd = gunicorn 'galaxy.webapps.galaxy.fast_factory:factory()' --timeout 300 --pythonpath lib -k uvicorn.workers.UvicornWorker -b fd://$(circus.sockets.web) +cmd = gunicorn 'galaxy.webapps.galaxy.fast_factory:factory()' --timeout 300 --pythonpath lib -k galaxy.webapps.galaxy.workers.Worker -b fd://$(circus.sockets.web) send_hup = true numprocesses = 1 use_sockets = True diff --git a/lib/galaxy/webapps/galaxy/workers.py b/lib/galaxy/webapps/galaxy/workers.py new file mode 100644 index 00000000000..b153b232820 --- /dev/null +++ b/lib/galaxy/webapps/galaxy/workers.py @@ -0,0 +1,9 @@ +import logging +log = logging.getLogger(__name__) + +try: + import uvloop # noqa: F401 + from uvicorn.workers import UvicornWorker as Worker +except ImportError: + log.warning("uvtools not available, falling back to pure python worker") + from uvicorn.workers import UvicornH11Worker as Worker # noqa: F401