class Redis::Cluster

def fetch_cluster_info!(option)

def fetch_cluster_info!(option)
  node = Node.new(option.per_node_key)
  available_slots = SlotLoader.load(node)
  node_flags = NodeLoader.load_flags(node)
  available_node_urls = NodeKey.to_node_urls(available_slots.keys, secure: option.secure?)
  option.update_node(available_node_urls)
  [Node.new(option.per_node_key, node_flags, option.use_replica?),
   Slot.new(available_slots, node_flags, option.use_replica?)]
ensure
  node.map(&:disconnect)
end