Commit ·
9cb950f
1
Parent(s): b7fbaeb
fix fallback to fresh retrieval on corrupted Redis cache
Browse files- src/rag/router.py +6 -3
src/rag/router.py
CHANGED
|
@@ -116,9 +116,12 @@ class RetrievalRouter:
|
|
| 116 |
|
| 117 |
cached = await redis.get(cache_key)
|
| 118 |
if cached:
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
|
|
|
|
|
|
|
|
|
| 122 |
|
| 123 |
results = await self._retrieve_uncached(query, user_id, source_hint, k)
|
| 124 |
|
|
|
|
| 116 |
|
| 117 |
cached = await redis.get(cache_key)
|
| 118 |
if cached:
|
| 119 |
+
try:
|
| 120 |
+
raw = json.loads(cached)
|
| 121 |
+
logger.info("returning cached retrieval results", source_hint=source_hint)
|
| 122 |
+
return [RetrievalResult(**r) for r in raw]
|
| 123 |
+
except Exception:
|
| 124 |
+
logger.warning("corrupted retrieval cache, fetching fresh", cache_key=cache_key)
|
| 125 |
|
| 126 |
results = await self._retrieve_uncached(query, user_id, source_hint, k)
|
| 127 |
|