summaryrefslogtreecommitdiff
path: root/searx
diff options
context:
space:
mode:
authorMarkus Heiser <markus.heiser@darmarIT.de>2025-07-08 13:46:39 +0200
committerGitHub <noreply@github.com>2025-07-08 13:46:39 +0200
commitbd593d0bad2189f57657bbcfa2c5e86f795c680e (patch)
tree36fcd14067d923a5c90d49f068ef54e5b275d74c /searx
parentfe52290e653e969c959b3160c1a09f02e751efd2 (diff)
[fix] granian: enabling debug on searxng-docker causes server crash (#4985)
When debugging is enabled, the context in which the process is running (uWSGI or `Flask.run` server) was previously checked [1]. This check has not yet taken the granian server into account. ---- The check is actually only required for the developer environment (`make run`) [2] and is intended to prevent double loading of modules when initializing a Flask server [3]. In the long term, we should find a more robust solution that explicitly enables the specific features of a development environment via switches. Further information on this problematic code can be found in [4][5][6]. [1] https://github.com/searxng/searxng/issues/4973#issuecomment-3047890957 [2] https://flask.palletsprojects.com/en/stable/api/#flask.Flask.run [3] https://github.com/pallets/flask/issues/5307#issuecomment-1774646119 [4] https://github.com/searxng/searxng/pull/1656#issuecomment-1214198941 [5] https://github.com/searxng/searxng/pull/1616#issuecomment-1206137468 [6] https://stackoverflow.com/a/25504196 - closes: https://github.com/searxng/searxng/issues/4973 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'searx')
-rwxr-xr-xsearx/webapp.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/searx/webapp.py b/searx/webapp.py
index 22e31fb5c..868d95e3e 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -1350,9 +1350,9 @@ def is_werkzeug_reload_active() -> bool:
.. _werkzeug.serving:
https://werkzeug.palletsprojects.com/en/stable/serving/#werkzeug.serving.run_simple
"""
-
- if "uwsgi" in sys.argv:
- # server was launched by uWSGI
+ logger.debug("sys.argv: %s", sys.argv)
+ if "uwsgi" in sys.argv[0] or "granian" in sys.argv[0]:
+ # server was launched by granian (or uWSGI)
return False
# https://github.com/searxng/searxng/pull/1656#issuecomment-1214198941