From 109cc21267eb88b9cea0d66f2fa69d40293d2a67 Mon Sep 17 00:00:00 2001 From: Harkrishn Patro Date: Wed, 7 Aug 2024 16:14:16 -0700 Subject: [PATCH] Assert network bytes out for replication slot stat computation is only allowed on primary (#847) Added an assertion to avoid incorrect usage of the network bytes out for replication code flow in slot stats computation. Signed-off-by: Harkrishn Patro --- src/cluster_slot_stats.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/cluster_slot_stats.c b/src/cluster_slot_stats.c index 56da5225e..8df49bc5e 100644 --- a/src/cluster_slot_stats.c +++ b/src/cluster_slot_stats.c @@ -143,6 +143,7 @@ static void clusterSlotStatsUpdateNetworkBytesOutForReplication(long long len) { if (c == NULL || !canAddNetworkBytesOut(c)) return; serverAssert(c->slot >= 0 && c->slot < CLUSTER_SLOTS); + serverAssert(nodeIsPrimary(server.cluster->myself)); if (len < 0) serverAssert(server.cluster->slot_stats[c->slot].network_bytes_out >= (uint64_t)llabs(len)); server.cluster->slot_stats[c->slot].network_bytes_out += (len * listLength(server.replicas)); }