You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2010/02/10 17:25:19 UTC
svn commit: r908568 - in
/incubator/cassandra/trunk/src/java/org/apache/cassandra:
db/CompactionManager.java gms/GossipDigestSynMessage.java gms/Gossiper.java
tools/NodeCmd.java utils/ExpiringMap.java
Author: jbellis
Date: Wed Feb 10 16:25:18 2010
New Revision: 908568
URL: http://svn.apache.org/viewvc?rev=908568&view=rev
Log:
replace map iteration via keys + value get w/ iteration over entryset. patch by gabriele renzi; reviewed by Stu Hood and jbellis for CASSANDRA-773
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/GossipDigestSynMessage.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/tools/NodeCmd.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/utils/ExpiringMap.java
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java?rev=908568&r1=908567&r2=908568&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java Wed Feb 10 16:25:18 2010
@@ -22,6 +22,7 @@
import java.io.File;
import java.lang.management.ManagementFactory;
import java.util.*;
+import java.util.Map.Entry;
import java.util.concurrent.Callable;
import java.util.concurrent.Future;
import javax.management.*;
@@ -450,9 +451,10 @@
// look for a bucket containing similar-sized files:
// group in the same bucket if it's w/in 50% of the average for this bucket,
// or this file and the bucket are all considered "small" (less than `min`)
- for (List<SSTableReader> bucket : buckets.keySet())
+ for (Entry<List<SSTableReader>, Long> entry : buckets.entrySet())
{
- long averageSize = buckets.get(bucket);
+ List<SSTableReader> bucket = entry.getKey();
+ long averageSize = entry.getValue();
if ((size > averageSize / 2 && size < 3 * averageSize / 2)
|| (size < min && averageSize < min))
{
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/GossipDigestSynMessage.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/GossipDigestSynMessage.java?rev=908568&r1=908567&r2=908568&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/GossipDigestSynMessage.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/GossipDigestSynMessage.java Wed Feb 10 16:25:18 2010
@@ -22,6 +22,7 @@
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.*;
+import java.util.Map.Entry;
import org.apache.cassandra.io.ICompactSerializer;
import org.apache.cassandra.net.CompactEndPointSerializationHelper;
@@ -112,17 +113,17 @@
class EndPointStatesSerializationHelper
{
private static final Logger logger_ = Logger.getLogger(EndPointStatesSerializationHelper.class);
-
+
static boolean serialize(Map<InetAddress, EndPointState> epStateMap, DataOutputStream dos) throws IOException
{
boolean bVal = true;
int estimate = 0;
int size = epStateMap.size();
dos.writeInt(size);
-
- Set<InetAddress> eps = epStateMap.keySet();
- for( InetAddress ep : eps )
+
+ for (Entry<InetAddress, EndPointState> entry : epStateMap.entrySet())
{
+ InetAddress ep = entry.getKey();
if ( Gossiper.MAX_GOSSIP_PACKET_SIZE - dos.size() < estimate )
{
logger_.info("@@@@ Breaking out to respect the MTU size in EPS. Estimate is " + estimate + " @@@@");
@@ -132,8 +133,7 @@
int pre = dos.size();
CompactEndPointSerializationHelper.serialize(ep, dos);
- EndPointState epState = epStateMap.get(ep);
- EndPointState.serializer().serialize(epState, dos);
+ EndPointState.serializer().serialize(entry.getValue(), dos);
int post = dos.size();
estimate = post - pre;
}
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java?rev=908568&r1=908567&r2=908568&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java Wed Feb 10 16:25:18 2010
@@ -20,6 +20,7 @@
import java.io.*;
import java.util.*;
+import java.util.Map.Entry;
import java.net.InetAddress;
import org.apache.cassandra.concurrent.StageManager;
@@ -186,10 +187,9 @@
versions.add( epState.getHeartBeatState().getHeartBeatVersion() );
Map<String, ApplicationState> appStateMap = epState.getApplicationStateMap();
- Set<String> keys = appStateMap.keySet();
- for ( String key : keys )
+ for (ApplicationState value : appStateMap.values())
{
- int stateVersion = appStateMap.get(key).getStateVersion();
+ int stateVersion = value.getStateVersion();
versions.add( stateVersion );
}
@@ -454,16 +454,16 @@
}
Map<String, ApplicationState> appStateMap = epState.getApplicationStateMap();
/* Accumulate all application states whose versions are greater than "version" variable */
- Set<String> keys = appStateMap.keySet();
- for ( String key : keys )
+ for (Entry<String, ApplicationState> entry : appStateMap.entrySet())
{
- ApplicationState appState = appStateMap.get(key);
+ ApplicationState appState = entry.getValue();
if ( appState.getStateVersion() > version )
{
if ( reqdEndPointState == null )
{
reqdEndPointState = new EndPointState(epState.getHeartBeatState());
}
+ final String key = entry.getKey();
if (logger_.isTraceEnabled())
logger_.trace("Adding state " + key + ": " + appState.getValue());
reqdEndPointState.addApplicationState(key, appState);
@@ -525,10 +525,10 @@
void notifyFailureDetector(Map<InetAddress, EndPointState> remoteEpStateMap)
{
IFailureDetector fd = FailureDetector.instance;
- Set<InetAddress> endpoints = remoteEpStateMap.keySet();
- for ( InetAddress endpoint : endpoints )
+ for (Entry<InetAddress, EndPointState> entry : remoteEpStateMap.entrySet())
{
- EndPointState remoteEndPointState = remoteEpStateMap.get(endpoint);
+ InetAddress endpoint = entry.getKey();
+ EndPointState remoteEndPointState = entry.getValue();
EndPointState localEndPointState = endPointStateMap_.get(endpoint);
/*
* If the local endpoint state exists then report to the FD only
@@ -604,14 +604,14 @@
synchronized void applyStateLocally(Map<InetAddress, EndPointState> epStateMap)
{
- Set<InetAddress> eps = epStateMap.keySet();
- for( InetAddress ep : eps )
+ for (Entry<InetAddress, EndPointState> entry : epStateMap.entrySet())
{
+ InetAddress ep = entry.getKey();
if ( ep.equals( localEndPoint_ ) )
continue;
EndPointState localEpStatePtr = endPointStateMap_.get(ep);
- EndPointState remoteState = epStateMap.get(ep);
+ EndPointState remoteState = entry.getValue();
/*
If state does not exist just add it. If it does then add it only if the version
of the remote copy is greater than the local copy.
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/tools/NodeCmd.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/tools/NodeCmd.java?rev=908568&r1=908567&r2=908568&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/tools/NodeCmd.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/tools/NodeCmd.java Wed Feb 10 16:25:18 2010
@@ -10,6 +10,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.Map.Entry;
import org.apache.cassandra.cache.JMXAggregatingCacheMBean;
import org.apache.cassandra.cache.JMXInstrumentedCacheMBean;
@@ -199,9 +200,10 @@
}
// print out the table statistics
- for (String tableName : cfstoreMap.keySet())
+ for (Entry<String, List<ColumnFamilyStoreMBean>> entry : cfstoreMap.entrySet())
{
- List<ColumnFamilyStoreMBean> columnFamilies = cfstoreMap.get(tableName);
+ String tableName = entry.getKey();
+ List<ColumnFamilyStoreMBean> columnFamilies = entry.getValue();
int tableReadCount = 0;
int tableWriteCount = 0;
int tablePendingTasks = 0;
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/utils/ExpiringMap.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/utils/ExpiringMap.java?rev=908568&r1=908567&r2=908568&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/utils/ExpiringMap.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/utils/ExpiringMap.java Wed Feb 10 16:25:18 2010
@@ -19,6 +19,7 @@
package org.apache.cassandra.utils;
import java.util.*;
+import java.util.Map.Entry;
import org.apache.log4j.Logger;
@@ -93,10 +94,11 @@
}
/* Calling the hooks on the keys that have been expunged */
- Set<K> keys = expungedValues.keySet();
- for (K key : keys)
+ for (Entry<K, V> entry : expungedValues.entrySet())
{
- V value = expungedValues.get(key);
+ K key = entry.getKey();
+ V value = entry.getValue();
+
ICacheExpungeHook<K, V> hook = hooks_.remove(key);
if (hook != null)
{