[infinispan-commits] Infinispan SVN: r2011 - in trunk/core/src: test/java/org/infinispan/distribution and 1 other directory.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Sat Jul 10 03:40:09 EDT 2010
Author: sannegrinovero
Date: 2010-07-10 03:40:08 -0400 (Sat, 10 Jul 2010)
New Revision: 2011
Modified:
trunk/core/src/main/java/org/infinispan/interceptors/BatchingInterceptor.java
trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java
trunk/core/src/test/java/org/infinispan/distribution/DistSkipRemoteLookupTest.java
Log:
[ISPN-535] (Flags ignored when batching out of transaction) - trunk
Modified: trunk/core/src/main/java/org/infinispan/interceptors/BatchingInterceptor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/interceptors/BatchingInterceptor.java 2010-07-09 09:03:22 UTC (rev 2010)
+++ trunk/core/src/main/java/org/infinispan/interceptors/BatchingInterceptor.java 2010-07-10 07:40:08 UTC (rev 2011)
@@ -66,6 +66,7 @@
// so that all interceptors in the stack will be executed in a transactional context.
// This is where a new context (TxInvocationContext) is created, as the existing context is not transactional: NonTxInvocationContext.
InvocationContext txContext = icc.createInvocationContext();
+ txContext.setFlags(ctx.getFlags());
return invokeNextInterceptor(txContext, command);
} finally {
if (transactionManager.getTransaction() != null && batchContainer.isSuspendTxAfterInvocation())
Modified: trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java 2010-07-09 09:03:22 UTC (rev 2010)
+++ trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java 2010-07-10 07:40:08 UTC (rev 2011)
@@ -58,6 +58,7 @@
// tests repeatedly queries changes
configuration.setIsolationLevel(IsolationLevel.REPEATABLE_READ);
}
+ configuration.setInvocationBatchingEnabled(batchingEnabled());
configuration.setSyncReplTimeout(60, TimeUnit.SECONDS);
configuration.setLockAcquisitionTimeout(45, TimeUnit.SECONDS);
configuration.setL1CacheEnabled(l1CacheEnabled);
@@ -81,6 +82,10 @@
}
+ protected boolean batchingEnabled() {
+ return false;
+ }
+
public static ConsistentHash createNewConsistentHash(List<Address> servers) {
try {
return ConsistentHashHelper.createConsistentHash(DefaultConsistentHash.class, servers);
Modified: trunk/core/src/test/java/org/infinispan/distribution/DistSkipRemoteLookupTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/DistSkipRemoteLookupTest.java 2010-07-09 09:03:22 UTC (rev 2010)
+++ trunk/core/src/test/java/org/infinispan/distribution/DistSkipRemoteLookupTest.java 2010-07-10 07:40:08 UTC (rev 2011)
@@ -18,7 +18,23 @@
assertOwnershipAndNonOwnership(k1);
}
+
+ public void testSkipLookupOnGetWhileBatching() {
+ MagicKey k1 = new MagicKey(c1);
+ c1.put(k1, "batchingMagicValue-h1");
+ assertIsInContainerImmortal(c1, k1);
+ assertIsInContainerImmortal(c2, k1);
+ assertIsNotInL1(c3, k1);
+ assertIsNotInL1(c4, k1);
+
+ c4.startBatch();
+ assert c4.getAdvancedCache().withFlags(SKIP_REMOTE_LOOKUP).get(k1) == null;
+ c4.endBatch(true);
+
+ assertOwnershipAndNonOwnership(k1);
+ }
+
public void testCorrectFunctionalityOnConditionalWrite() {
MagicKey k1 = new MagicKey(c1);
c1.put(k1, "value");
@@ -49,4 +65,9 @@
assert c3.get(k1).equals("new_val");
assertOnAllCachesAndOwnership(k1, "new_val");
}
+
+ @Override
+ protected boolean batchingEnabled() {
+ return true;
+ }
}
More information about the infinispan-commits
mailing list