summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2014-05-21 18:17:02 +0200
committerantirez <antirez@gmail.com>2014-05-23 09:26:04 +0200
commit0e1b5ff63b5ebcc5397123264f62f6e2c4f71482 (patch)
tree3e7eea78916ca9f2e2f4403d2f0d204c663a1e2f
parentc268d1ebd51c8fd3a4dfd0814d5e8f0214d48a87 (diff)
downloadredis-0e1b5ff63b5ebcc5397123264f62f6e2c4f71482.tar.gz
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.
-rwxr-xr-xsrc/redis-trib.rb4
1 files changed, 3 insertions, 1 deletions
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)"