From eb861ccd41d0839da815ef853eba326f177dab14 Mon Sep 17 00:00:00 2001 From: Christopher Date: Sat, 7 Mar 2020 23:44:26 -0600 Subject: [PATCH] difference, not intersection... --- lib/cluster_kv/ring.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cluster_kv/ring.ex b/lib/cluster_kv/ring.ex index d66db48..b4b5157 100644 --- a/lib/cluster_kv/ring.ex +++ b/lib/cluster_kv/ring.ex @@ -361,7 +361,7 @@ defmodule ClusterKV.Ring do |> Enum.reduce(%{}, fn {k, v}, acc -> old_nodes = HashRing.key_to_nodes(old_ring, k, repls) |> MapSet.new() new_nodes = HashRing.key_to_nodes(new_ring, k, repls) |> MapSet.new() - nodes = MapSet.intersection(new_nodes, old_nodes) |> MapSet.to_list() + nodes = MapSet.difference(new_nodes, old_nodes) |> MapSet.to_list() Enum.reduce(nodes, acc, fn n, a -> Map.update(a, n, [], &[{k, v} | &1]) -- 2.45.3