From d2c17f75395706d1915bbe8d1713d2a9e9031c77 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Thu, 18 Jan 2024 21:52:33 +0800 Subject: [PATCH] graceful shutdown redis --- packages/api/src/redis_data_source.ts | 2 +- packages/content-fetch/src/redis.ts | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/api/src/redis_data_source.ts b/packages/api/src/redis_data_source.ts index 31109bd4e..ef7cf55e3 100644 --- a/packages/api/src/redis_data_source.ts +++ b/packages/api/src/redis_data_source.ts @@ -39,7 +39,7 @@ export class RedisDataSource { await this.workerRedisClient?.quit() await this.redisClient?.quit() } catch (err) { - console.error('error while shutting down redis') + console.error('error while shutting down redis', err) } } } diff --git a/packages/content-fetch/src/redis.ts b/packages/content-fetch/src/redis.ts index 2160a70a3..3e83bd4a4 100644 --- a/packages/content-fetch/src/redis.ts +++ b/packages/content-fetch/src/redis.ts @@ -24,14 +24,16 @@ redis.on('error', (err) => { console.error('Redis error', err) }) -redis.on('close', () => { - console.log('Redis connection closed') -}) - export const gracefulShutdown = async (signal: string) => { console.log(`Received ${signal}, closing server...`) - await redis.quit() - process.exit(0) + try { + await redis.quit() + console.log('Redis connection closed') + } catch (error) { + console.error('Error while shutting down redis', error) + } finally { + process.exit(0) + } } process.on('SIGINT', () => gracefulShutdown('SIGINT'))