From 8e661a4e73ca04a6fcf958245fdeba737224a7ca Mon Sep 17 00:00:00 2001 From: Joseph Low Date: Fri, 12 Dec 2025 03:30:51 +0800 Subject: [PATCH] Fix: Use SCAN instead of KEYS for Redis cluster compatibility (#19871) --- backend/open_webui/socket/utils.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/socket/utils.py b/backend/open_webui/socket/utils.py index 5739a8027a..ccbe333656 100644 --- a/backend/open_webui/socket/utils.py +++ b/backend/open_webui/socket/utils.py @@ -190,7 +190,9 @@ class YdocManager: async def remove_user_from_all_documents(self, user_id: str): if self._redis: - keys = await self._redis.keys(f"{self._redis_key_prefix}:*") + keys = [] + async for key in self._redis.scan_iter(match=f"{self._redis_key_prefix}:*", count=100): + keys.append(key) for key in keys: if key.endswith(":users"): await self._redis.srem(key, user_id)