From 85238b9da75058cb885f47bc28baf1eefce35f25 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Thu, 21 Mar 2024 07:32:44 +0300 Subject: [PATCH] Improvement - CPU and Memory consumption by ClusterConnectionManager.getLastPartitonsByURI() method. #5695 --- .../java/org/redisson/cluster/ClusterConnectionManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java b/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java index 64afaecb3..38d420864 100644 --- a/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java +++ b/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java @@ -346,6 +346,8 @@ public class ClusterConnectionManager extends MasterSlaveConnectionManager { for (Integer slot : partition.getSlots()) { addEntry(slot, entry); lastPartitions.put(slot, partition); + } + if (partition.getSlotsAmount() > 0) { lastUri2Partition.put(partition.getMasterAddress(), partition); } @@ -731,10 +733,10 @@ public class ClusterConnectionManager extends MasterSlaveConnectionManager { addedSlots.stream().forEach(slot -> { addEntry(slot, entry); lastPartitions.put(slot, currentPartition); - lastUri2Partition.put(currentPartition.getMasterAddress(), currentPartition); changedSlots.add(slot); }); if (!addedSlots.isEmpty()) { + lastUri2Partition.put(currentPartition.getMasterAddress(), currentPartition); log.info("{} slots added to {}", addedSlots.cardinality(), currentPartition.getMasterAddress()); }