Author: jbellis Date: Mon Oct 31 16:10:39 2011 New Revision: 1195546 URL: http://svn.apache.org/viewvc?rev=1195546&view=rev Log: synchronize BiMap of bootstrapping tokens patch by jbellis and brandonwilliams for CASSANDRA-3417
Modified: cassandra/branches/cassandra-1.0/CHANGES.txt cassandra/branches/cassandra-1.0/conf/cassandra-env.sh cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/locator/TokenMetadata.java Modified: cassandra/branches/cassandra-1.0/CHANGES.txt URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/CHANGES.txt?rev=1195546&r1=1195545&r2=1195546&view=diff ============================================================================== --- cassandra/branches/cassandra-1.0/CHANGES.txt (original) +++ cassandra/branches/cassandra-1.0/CHANGES.txt Mon Oct 31 16:10:39 2011 @@ -3,6 +3,8 @@ * cleanup usage of StorageService.setMode() (CASANDRA-3388) * Add timing information to cassandra-cli GET/SET/LIST queries (CASSANDRA-3326) * Cache for CompressionMetadata objects (CASSANDRA-3427) + * synchronize BiMap of bootstrapping tokens (CASSANDRA-3417) + 1.0.1 * acquire references during index build to prevent delete problems Modified: cassandra/branches/cassandra-1.0/conf/cassandra-env.sh URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/conf/cassandra-env.sh?rev=1195546&r1=1195545&r2=1195546&view=diff ============================================================================== --- cassandra/branches/cassandra-1.0/conf/cassandra-env.sh (original) +++ cassandra/branches/cassandra-1.0/conf/cassandra-env.sh Mon Oct 31 16:10:39 2011 @@ -165,6 +165,7 @@ JVM_OPTS="$JVM_OPTS -XX:+UseCMSInitiatin # GC logging options -- uncomment to enable # JVM_OPTS="$JVM_OPTS -XX:+PrintGCDetails" # JVM_OPTS="$JVM_OPTS -XX:+PrintGCTimeStamps" +# JVM_OPTS="$JVM_OPTS -XX:+PrintHeapAtGC" # JVM_OPTS="$JVM_OPTS -XX:+PrintTenuringDistribution" # JVM_OPTS="$JVM_OPTS -XX:+PrintGCApplicationStoppedTime" # JVM_OPTS="$JVM_OPTS -XX:+PrintPromotionFailure" Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/locator/TokenMetadata.java URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/locator/TokenMetadata.java?rev=1195546&r1=1195545&r2=1195546&view=diff ============================================================================== --- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/locator/TokenMetadata.java (original) +++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/locator/TokenMetadata.java Mon Oct 31 16:10:39 2011 @@ -67,7 +67,7 @@ public class TokenMetadata // Finally, note that recording the tokens of joining nodes in bootstrapTokens also // means we can detect and reject the addition of multiple nodes at the same token // before one becomes part of the ring. - private BiMap<Token, InetAddress> bootstrapTokens = HashBiMap.create(); + private BiMap<Token, InetAddress> bootstrapTokens = Maps.synchronizedBiMap(HashBiMap.<Token, InetAddress>create()); // (don't need to record Token here since it's still part of tokenToEndpointMap until it's done leaving) private Set<InetAddress> leavingEndpoints = new HashSet<InetAddress>(); // this is a cache of the calculation from {tokenToEndpointMap, bootstrapTokens, leavingEndpoints}