fix: Set default Redis socket timeout to None (#27104)

This commit is contained in:
EntropyYue
2026-07-27 00:30:00 -04:00
committed by GitHub
parent 57e60423b9
commit f21d7947f9
2 changed files with 9 additions and 0 deletions
+6
View File
@@ -389,6 +389,12 @@ try:
except ValueError:
REDIS_SOCKET_CONNECT_TIMEOUT = None
REDIS_SOCKET_TIMEOUT = os.getenv('REDIS_SOCKET_TIMEOUT', '')
try:
REDIS_SOCKET_TIMEOUT = float(REDIS_SOCKET_TIMEOUT)
except ValueError:
REDIS_SOCKET_TIMEOUT = None
# Whether to enable TCP SO_KEEPALIVE on Redis client sockets. Opt-in:
# defaults to off so behavior is unchanged for existing deployments. When
# enabled, the kernel sends TCP keepalive probes on idle connections so
+3
View File
@@ -23,6 +23,7 @@ from open_webui.env import (
REDIS_SENTINEL_PORT,
REDIS_SOCKET_CONNECT_TIMEOUT,
REDIS_SOCKET_KEEPALIVE,
REDIS_SOCKET_TIMEOUT,
REDIS_URL,
)
@@ -257,6 +258,8 @@ def _socket_options() -> dict[str, Any]:
opts: dict[str, Any] = {}
if REDIS_SOCKET_CONNECT_TIMEOUT is not None:
opts['socket_connect_timeout'] = REDIS_SOCKET_CONNECT_TIMEOUT
if REDIS_SOCKET_TIMEOUT:
opts['socket_timeout'] = REDIS_SOCKET_TIMEOUT
if REDIS_SOCKET_KEEPALIVE:
opts['socket_keepalive'] = True
if REDIS_HEALTH_CHECK_INTERVAL: