diff --git a/packages/api/src/jobs/save_page.ts b/packages/api/src/jobs/save_page.ts index 1f2d276e4..1879dbe0b 100644 --- a/packages/api/src/jobs/save_page.ts +++ b/packages/api/src/jobs/save_page.ts @@ -139,13 +139,18 @@ const sendImportStatusUpdate = async ( const getCachedFetchResult = async (url: string) => { const key = `fetch-result:${url}` - if (!redisDataSource.redisClient) { + if (!redisDataSource.redisClient || !redisDataSource.workerRedisClient) { throw new Error('redis client is not initialized') } - const result = await redisDataSource.redisClient.get(key) + let result = await redisDataSource.redisClient.get(key) if (!result) { - throw new Error('fetch result is not cached') + logger.debug(`fetch result is not cached in cache redis ${url}`) + // fallback to worker redis client if the result is not found + result = await redisDataSource.workerRedisClient.get(key) + if (!result) { + throw new Error('fetch result is not cached') + } } const fetchResult = JSON.parse(result) as unknown