From 8c3693c6b08a29ada08f6b0dd9c43fa54871e628 Mon Sep 17 00:00:00 2001 From: Jonathan Ellis Date: Fri, 28 Aug 2009 19:33:05 +0000 Subject: [PATCH] move Map creation into default constructor so we don't waste object creation when the non-default constructor is used patch by jbellis git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@809001 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/cassandra/locator/TokenMetadata.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/java/org/apache/cassandra/locator/TokenMetadata.java b/src/java/org/apache/cassandra/locator/TokenMetadata.java index 47a498b5f5..148b4f92c1 100644 --- a/src/java/org/apache/cassandra/locator/TokenMetadata.java +++ b/src/java/org/apache/cassandra/locator/TokenMetadata.java @@ -28,24 +28,27 @@ import org.apache.cassandra.net.EndPoint; public class TokenMetadata { /* Maintains token to endpoint map of every node in the cluster. */ - private Map tokenToEndPointMap_ = new HashMap(); + private Map tokenToEndPointMap_; /* Maintains a reverse index of endpoint to token in the cluster. */ - private Map endPointToTokenMap_ = new HashMap(); + private Map endPointToTokenMap_; /* Bootstrapping nodes and their tokens */ - private Map bootstrapNodes = Collections.synchronizedMap(new HashMap()); + private Map bootstrapNodes; /* Use this lock for manipulating the token map */ private final ReadWriteLock lock_ = new ReentrantReadWriteLock(true); public TokenMetadata() { + tokenToEndPointMap_ = new HashMap(); + endPointToTokenMap_ = new HashMap(); + this.bootstrapNodes = Collections.synchronizedMap(new HashMap()); } public TokenMetadata(Map tokenToEndPointMap, Map endPointToTokenMap, Map bootstrapNodes) { tokenToEndPointMap_ = tokenToEndPointMap; endPointToTokenMap_ = endPointToTokenMap; - this.bootstrapNodes = bootstrapNodes; + this.bootstrapNodes = bootstrapNodes; } public TokenMetadata cloneMe()