From b65ada2a553d59ba5e4e0344f37a6e57ad568075 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Wed, 10 Jan 2024 11:55:58 +0800 Subject: [PATCH] fix: too many open redis connections --- packages/rss-handler/src/index.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/rss-handler/src/index.ts b/packages/rss-handler/src/index.ts index 086508dcb..624674598 100644 --- a/packages/rss-handler/src/index.ts +++ b/packages/rss-handler/src/index.ts @@ -605,18 +605,17 @@ export const rssHandler = Sentry.GCPFunction.wrapHttpFunction( return res.sendStatus(403) } + // create redis client + const redisClient = await createRedisClient( + process.env.REDIS_URL, + process.env.REDIS_CERT + ) + try { if (!isRssFeedRequest(req.body)) { console.error('Invalid request body', req.body) return res.status(400).send('INVALID_REQUEST_BODY') } - - // create redis client - const redisClient = await createRedisClient( - process.env.REDIS_URL, - process.env.REDIS_CERT - ) - const { feedUrl, subscriptionIds, @@ -678,6 +677,9 @@ export const rssHandler = Sentry.GCPFunction.wrapHttpFunction( } catch (e) { console.error('Error while saving RSS feeds', e) res.status(500).send('INTERNAL_SERVER_ERROR') + } finally { + await redisClient.quit() + console.log('Redis client disconnected') } } )