diff --git a/src/java/org/apache/cassandra/tcm/ownership/TokenMap.java b/src/java/org/apache/cassandra/tcm/ownership/TokenMap.java index ed82642c8a9..993fded7df0 100644 --- a/src/java/org/apache/cassandra/tcm/ownership/TokenMap.java +++ b/src/java/org/apache/cassandra/tcm/ownership/TokenMap.java @@ -55,7 +55,7 @@ public class TokenMap implements MetadataValue private static final Logger logger = LoggerFactory.getLogger(TokenMap.class); private final SortedBiMultiValMap map; - private final List tokens; + private final ImmutableList tokens; private final List> ranges; // TODO: move partitioner to the users (SimpleStrategy and Uniform Range Placement?) private final IPartitioner partitioner; @@ -71,7 +71,7 @@ private TokenMap(Epoch lastModified, IPartitioner partitioner, SortedBiMultiValM this.lastModified = lastModified; this.partitioner = partitioner; this.map = map; - this.tokens = tokens(); + this.tokens = ImmutableList.copyOf(map.keySet()); this.ranges = toRanges(tokens, partitioner); } @@ -101,18 +101,6 @@ public TokenMap unassignTokens(NodeId id) return new TokenMap(lastModified, partitioner, finalisedCopy); } - public TokenMap unassignTokens(NodeId id, Collection tokens) - { - SortedBiMultiValMap finalisedCopy = SortedBiMultiValMap.create(map); - for (Token token : tokens) - { - NodeId nodeId = finalisedCopy.remove(token); - assert nodeId.equals(id); - } - - return new TokenMap(lastModified, partitioner, finalisedCopy); - } - public SortedBiMultiValMap asMap() { return SortedBiMultiValMap.create(map); @@ -130,7 +118,7 @@ public IPartitioner partitioner() public ImmutableList tokens() { - return ImmutableList.copyOf(map.keySet()); + return tokens; } public ImmutableList tokens(NodeId nodeId)