diff --git a/hbase-shell/src/main/ruby/hbase/replication_admin.rb b/hbase-shell/src/main/ruby/hbase/replication_admin.rb index f80c547..d19f169 100644 --- a/hbase-shell/src/main/ruby/hbase/replication_admin.rb +++ b/hbase-shell/src/main/ruby/hbase/replication_admin.rb @@ -221,11 +221,16 @@ module Hbase rpc = get_peer_config(id) unless rpc.nil? ns_set = rpc.getNamespaces - ns_set = java.util.HashSet.new if ns_set.nil? + ns_set2 = java.util.HashSet.new + unless ns_set.nil? + ns_set.each do |n| + ns_set2.add(n) + end + end namespaces.each do |n| - ns_set.add(n) + ns_set2.add(n) end - rpc.setNamespaces(ns_set) + rpc.setNamespaces(ns_set2) @admin.updateReplicationPeerConfig(id, rpc) end end @@ -237,12 +242,13 @@ module Hbase rpc = get_peer_config(id) unless rpc.nil? ns_set = rpc.getNamespaces + ns_set2 = java.util.HashSet.new unless ns_set.nil? - namespaces.each do |n| - ns_set.remove(n) + ns_set.each do |n| + ns_set2.add(n) if !namespaces.include? n end end - rpc.setNamespaces(ns_set) + rpc.setNamespaces(ns_set2) @admin.updateReplicationPeerConfig(id, rpc) end end