From 551d2041dc1110c26296e674ee953f48b9d641e5 Mon Sep 17 00:00:00 2001 From: Leibale Eidelman Date: Mon, 24 Jan 2022 12:03:40 -0500 Subject: [PATCH] fix #1854 - fix __redis__:invalidate messages handler (#1856) --- packages/client/lib/client/commands-queue.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/client/lib/client/commands-queue.ts b/packages/client/lib/client/commands-queue.ts index 13e37c4ccc..84ec7e52c9 100644 --- a/packages/client/lib/client/commands-queue.ts +++ b/packages/client/lib/client/commands-queue.ts @@ -82,10 +82,12 @@ export default class RedisCommandsQueue { if (!listeners.strings.size) return; - // https://github.com/redis/redis/pull/7469 - // https://github.com/redis/redis/issues/7463 - const messageString = (Array.isArray(message) ? message.map(m => m.toString()) as any : message.toString()), - channelString = pattern ? channel.toString() : keyString; + const channelString = pattern ? channel.toString() : keyString, + messageString = channelString === '__redis__:invalidate' ? + // https://github.com/redis/redis/pull/7469 + // https://github.com/redis/redis/issues/7463 + (message === null ? null : (message as any as Array).map(x => x.toString())) as any : + message.toString(); for (const listener of listeners.strings) { listener(messageString, channelString); }