From cdbe9d2c23aeb58ac1a3ac85a61ffbadc6370ea1 Mon Sep 17 00:00:00 2001 From: "zhaozhao.zz" Date: Mon, 16 Jul 2018 20:48:07 +0800 Subject: [PATCH] Streams: correctly propagate xdel if needed --- src/t_stream.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/t_stream.c b/src/t_stream.c index 442515866..3b4ebea78 100644 --- a/src/t_stream.c +++ b/src/t_stream.c @@ -2137,9 +2137,13 @@ void xdelCommand(client *c) { streamParseIDOrReply(c,c->argv[j],&id,0); /* Retval already checked. */ deleted += streamDeleteItem(s,&id); } - signalModifiedKey(c->db,c->argv[1]); - notifyKeyspaceEvent(NOTIFY_STREAM,"xdel",c->argv[1],c->db->id); - server.dirty += deleted; + + /* Propagate the write if needed. */ + if (deleted) { + signalModifiedKey(c->db,c->argv[1]); + notifyKeyspaceEvent(NOTIFY_STREAM,"xdel",c->argv[1],c->db->id); + server.dirty += deleted; + } addReplyLongLong(c,deleted); }