[infinispan-commits] Infinispan SVN: r1018 - in trunk/core/src/main/java/org/infinispan: interceptors and 1 other directory.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Mon Oct 26 13:31:37 EDT 2009


Author: manik.surtani at jboss.com
Date: 2009-10-26 13:31:36 -0400 (Mon, 26 Oct 2009)
New Revision: 1018

Modified:
   trunk/core/src/main/java/org/infinispan/distribution/DefaultConsistentHash.java
   trunk/core/src/main/java/org/infinispan/interceptors/DistributionInterceptor.java
Log:
Performance tweaks after profiling

Modified: trunk/core/src/main/java/org/infinispan/distribution/DefaultConsistentHash.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/distribution/DefaultConsistentHash.java	2009-10-26 17:25:10 UTC (rev 1017)
+++ trunk/core/src/main/java/org/infinispan/distribution/DefaultConsistentHash.java	2009-10-26 17:31:36 UTC (rev 1018)
@@ -58,19 +58,25 @@
 
       SortedMap<Integer, Address> candidates = positions.tailMap(hash % HASH_SPACE);
 
+      int numOwnersFound = 0;
+
       for (Address a : candidates.values()) {
-         if (owners.size() < numCopiesToFind)
+         if (numOwnersFound < numCopiesToFind) {
             owners.add(a);
-         else
+            numOwnersFound++;
+         } else {
             break;
+         }
       }
 
-      if (owners.size() < numCopiesToFind) {
+      if (numOwnersFound < numCopiesToFind) {
          for (Address a : positions.values()) {
-            if (owners.size() < numCopiesToFind)
+            if (numOwnersFound < numCopiesToFind) {
                owners.add(a);
-            else
+               numOwnersFound++;
+            } else {
                break;
+            }
          }
       }
 
@@ -88,8 +94,9 @@
       SortedMap<Integer, Address> candidates = positions.tailMap(hash % HASH_SPACE);
       int nodesTested = 0;
       for (Address a : candidates.values()) {
-         if (nodesTested++ < numCopiesToFind) {
+         if (nodesTested < numCopiesToFind) {
             if (a.equals(target)) return true;
+            nodesTested++;
          } else {
             break;
          }
@@ -98,8 +105,9 @@
       // start from the beginning
       if (nodesTested < numCopiesToFind) {
          for (Address a : positions.values()) {
-            if (nodesTested++ < numCopiesToFind) {
+            if (nodesTested < numCopiesToFind) {
                if (a.equals(target)) return true;
+               nodesTested++;
             } else {
                break;
             }

Modified: trunk/core/src/main/java/org/infinispan/interceptors/DistributionInterceptor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/interceptors/DistributionInterceptor.java	2009-10-26 17:25:10 UTC (rev 1017)
+++ trunk/core/src/main/java/org/infinispan/interceptors/DistributionInterceptor.java	2009-10-26 17:31:36 UTC (rev 1018)
@@ -294,9 +294,7 @@
                }
             }
          } else {
-            if (!localModeForced) {
-               ((TxInvocationContext) ctx).addTransactionParticipants(recipientGenerator.generateRecipients());
-            }
+            ((TxInvocationContext) ctx).addTransactionParticipants(recipientGenerator.generateRecipients());
          }
       }
       return returnValue;



More information about the infinispan-commits mailing list