From f18ca3d8a10af7a893ed4ffe90ad0df201e9df6f Mon Sep 17 00:00:00 2001 From: mmdsnb <578593908@qq.com> Date: Wed, 19 Jun 2024 17:47:20 +0800 Subject: [PATCH] BUG FIX 2152 When the cache expires, deleting the key from the cache will attempt to acquire a lock, which is not reentrant at this point, leading to suspension. --- src/backend/base/langflow/services/cache/service.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/base/langflow/services/cache/service.py b/src/backend/base/langflow/services/cache/service.py index 2aa187b22..72a6d29c0 100644 --- a/src/backend/base/langflow/services/cache/service.py +++ b/src/backend/base/langflow/services/cache/service.py @@ -350,7 +350,7 @@ class AsyncInMemoryCache(AsyncBaseCacheService, Service): return pickle.loads(item["value"]) if isinstance(item["value"], bytes) else item["value"] else: logger.info(f"Cache item for key '{key}' has expired and will be deleted.") - await self.delete(key) # Log before deleting the expired item + await self._delete(key) # Log before deleting the expired item return CACHE_MISS async def set(self, key, value, lock: Optional[asyncio.Lock] = None):