From cb0d8ba48ac6c962b697b552736b43f27883ceba Mon Sep 17 00:00:00 2001 From: Jack Park Date: Thu, 6 Nov 2025 16:13:03 -0800 Subject: [PATCH] Add pubsub commands --- .../intro/arch_overview/other_protocols/redis.rst | 4 ++++ .../network/common/redis/supported_commands.h | 15 ++++++++------- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/docs/root/intro/arch_overview/other_protocols/redis.rst b/docs/root/intro/arch_overview/other_protocols/redis.rst index 24e77c834f7ae..e3a1ed72d20db 100644 --- a/docs/root/intro/arch_overview/other_protocols/redis.rst +++ b/docs/root/intro/arch_overview/other_protocols/redis.rst @@ -215,9 +215,13 @@ For details on each command's usage see the official SISMEMBER, Set SMEMBERS, Set SPOP, Set + SPUBLISH Pubsub SRANDMEMBER, Set SREM, Set SSCAN, Set + SSUBSCRIBE Pubsub + SUBSCRIBE, Pubsub + SUNSUBSCRIBE Pubsub WATCH, String UNWATCH, String ZADD, Sorted Set diff --git a/source/extensions/filters/network/common/redis/supported_commands.h b/source/extensions/filters/network/common/redis/supported_commands.h index 521b5913b30dc..48cb0914a159f 100644 --- a/source/extensions/filters/network/common/redis/supported_commands.h +++ b/source/extensions/filters/network/common/redis/supported_commands.h @@ -30,11 +30,12 @@ struct SupportedCommands { "lpush", "lpushx", "lrange", "lrem", "lset", "ltrim", "persist", "pexpire", "pexpireat", "pfadd", "pfcount", "psetex", "pttl", "publish", "restore", "rpop", "rpush", "rpushx", "sadd", "scard", "set", "setbit", "setex", "setnx", "setrange", "sismember", "smembers", - "spop", "srandmember", "srem", "sscan", "strlen", "ttl", "type", "xack", "xadd", - "xautoclaim", "xclaim", "xdel", "xlen", "xpending", "xrange", "xrevrange", "xtrim", "zadd", - "zcard", "zcount", "zincrby", "zlexcount", "zpopmin", "zpopmax", "zrange", "zrangebylex", - "zrangebyscore", "zrank", "zrem", "zremrangebylex", "zremrangebyrank", "zremrangebyscore", - "zrevrange", "zrevrangebylex", "zrevrangebyscore", "zrevrank", "zscan", "zscore"); + "spop", "spublish", "srandmember", "srem", "sscan", "strlen", "ssubscribe", "subscribe", + "sunsubscribe", "ttl", "type", "watch", "xack", "xadd", "xautoclaim", "xclaim", "xdel", + "xlen", "xpending", "xrange", "xrevrange", "xtrim", "zadd", "zcard", "zcount", "zincrby", + "zlexcount", "zpopmin", "zpopmax", "zrange", "zrangebylex", "zrangebyscore", "zrank", + "zrem", "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "zrevrange", + "zrevrangebylex", "zrevrangebyscore", "zrevrank", "zscan", "zscore"); } /** @@ -124,8 +125,8 @@ struct SupportedCommands { "lpush", "lpushx", "lrem", "lset", "ltrim", "mset", "multi", "persist", "pexpire", "pexpireat", "pfadd", "psetex", "restore", "rpop", "rpush", "rpushx", "sadd", "set", "setbit", "setex", "setnx", "setrange", "spop", - "srem", "zadd", "zincrby", "touch", "zpopmin", "zpopmax", "zrem", - "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "unlink"); + "srem", "spublish", "zadd", "zincrby", "touch", "zpopmin", "zpopmax", + "zrem", "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "unlink"); } static bool isReadCommand(const std::string& command) {