From 5e23f1c4de9301ce789719bf5c656d1a2ef85fbd Mon Sep 17 00:00:00 2001 From: dengliming Date: Thu, 6 Jan 2022 23:13:20 +0800 Subject: [PATCH] Simplify `CLUSTER MYID` command for Jedis. Closes #2226 --- .../connection/jedis/JedisClusterConnection.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/springframework/data/redis/connection/jedis/JedisClusterConnection.java b/src/main/java/org/springframework/data/redis/connection/jedis/JedisClusterConnection.java index 424cf4cb1..8af68fb3c 100644 --- a/src/main/java/org/springframework/data/redis/connection/jedis/JedisClusterConnection.java +++ b/src/main/java/org/springframework/data/redis/connection/jedis/JedisClusterConnection.java @@ -70,6 +70,7 @@ import org.springframework.util.Assert; * @author Tao Chen * @author Chen Guanqun * @author Pavel Khokhlov + * @author Liming Deng * @since 1.7 */ public class JedisClusterConnection implements DefaultedRedisClusterConnection { @@ -577,13 +578,10 @@ public class JedisClusterConnection implements DefaultedRedisClusterConnection { @Override public Map> clusterGetMasterSlaveMap() { - List>> nodeResults = clusterCommandExecutor - .executeCommandAsyncOnNodes((JedisClusterCommandCallback>) client -> { - - // TODO: remove client.eval as soon as Jedis offers support for myid - return JedisConverters.toSetOfRedisClusterNodes( - client.clusterSlaves((String) client.eval("return redis.call('cluster', 'myid')", 0))); - }, topologyProvider.getTopology().getActiveMasterNodes()).getResults(); + List>> nodeResults = clusterCommandExecutor.executeCommandAsyncOnNodes( + (JedisClusterCommandCallback>) client -> JedisConverters + .toSetOfRedisClusterNodes(client.clusterSlaves(client.clusterMyId())), + topologyProvider.getTopology().getActiveMasterNodes()).getResults(); Map> result = new LinkedHashMap<>();