From d493e5e7e61aaee68ad2d4d9277f7036702b1f30 Mon Sep 17 00:00:00 2001 From: antirez Date: Wed, 21 May 2014 18:17:02 +0200 Subject: [PATCH] Fix an error in redis-trib where we always talk with same node. While iterating the list of nodes we want to set the slot as stable in the current node, not always in the first node of the list. --- src/redis-trib.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/redis-trib.rb b/src/redis-trib.rb index 212493db5..26ebd48df 100755 --- a/src/redis-trib.rb +++ b/src/redis-trib.rb @@ -469,6 +469,8 @@ class RedisTrib # number of keys, among the set of migrating / importing nodes. if !owner xputs "*** Fix me, some work to do here." + # Select owner... + # Use ADDSLOTS to assign the slot. exit 1 end @@ -498,7 +500,7 @@ class RedisTrib next if node == owner move_slot(node,owner,slot,:verbose=>true,:fix=>true,:cold=>true) xputs ">>> Setting #{slot} as STABLE in #{node}" - importing[0].r.cluster("setslot",slot,"stable") + node.r.cluster("setslot",slot,"stable") } else xputs "[ERR] Sorry, Redis-trib can't fix this slot yet (work in progress)"