From bbf1af2da34001cf1f3af808cc3972dbc78fc6ab Mon Sep 17 00:00:00 2001 From: Matt Stancliff Date: Thu, 23 Oct 2014 13:44:42 -0400 Subject: [PATCH] Fix redis-trib.rb IP:Port disassembly for IPv6 IP format is now any of: - 127.0.0.1:6379 - ::1:6379 --- src/redis-trib.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/redis-trib.rb b/src/redis-trib.rb index cff0f360..466a8113 100755 --- a/src/redis-trib.rb +++ b/src/redis-trib.rb @@ -50,14 +50,16 @@ end class ClusterNode def initialize(addr) s = addr.split(":") - if s.length != 2 - puts "Invalid node name #{addr}" - exit 1 + if s.length < 2 + puts "Invalid IP or Port (given as #{addr}) - use IP:Port format" + exit 1 end + port = s.pop # removes port from split array + ip = s.join(":") # if s.length > 1 here, it's IPv6, so restore address @r = nil @info = {} - @info[:host] = s[0] - @info[:port] = s[1] + @info[:host] = ip + @info[:port] = port @info[:slots] = {} @info[:migrating] = {} @info[:importing] = {}