You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2017/04/20 08:40:12 UTC
[65/71] [abbrv] ignite git commit: ignite-1561 Fixed tx prepare for
cross cache tx with near + colocated cache
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformCollectionView.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformCollectionView.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformCollectionView.java
index 2c317df..10e9ec5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformCollectionView.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformCollectionView.java
@@ -21,7 +21,6 @@ import java.util.Collection;
import java.util.Iterator;
import org.apache.ignite.internal.util.GridSerializableCollection;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.lang.IgniteClosure;
import org.apache.ignite.lang.IgnitePredicate;
import org.jetbrains.annotations.NotNull;
@@ -50,6 +49,7 @@ public class TransformCollectionView<T1, T2> extends GridSerializableCollection<
* @param clos Transformation closure.
* @param preds Optional predicated. If predicates are not provided - all elements will be in the view.
*/
+ @SafeVarargs
public TransformCollectionView(Collection<? extends T2> col,
IgniteClosure<? super T2, T1> clos, IgnitePredicate<? super T2>... preds) {
this.col = col;
@@ -71,9 +71,4 @@ public class TransformCollectionView<T1, T2> extends GridSerializableCollection<
@Override public boolean isEmpty() {
return F.isEmpty(preds) ? col.isEmpty() : !iterator().hasNext();
}
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(TransformCollectionView.class, this);
- }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformMapView.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformMapView.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformMapView.java
index 91b8302..a089f67 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformMapView.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/TransformMapView.java
@@ -24,7 +24,6 @@ import org.apache.ignite.internal.util.GridSerializableMap;
import org.apache.ignite.internal.util.GridSerializableSet;
import org.apache.ignite.internal.util.lang.GridFunc;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.lang.IgniteClosure;
import org.apache.ignite.lang.IgnitePredicate;
import org.jetbrains.annotations.NotNull;
@@ -160,9 +159,4 @@ public class TransformMapView<K, V1, V> extends GridSerializableMap<K, V1> {
@Override public boolean containsKey(Object key) {
return GridFunc.isAll((K)key, preds) && map.containsKey(key);
}
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(TransformMapView.class, this);
- }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxNearEnabledRandomOperationsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxNearEnabledRandomOperationsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxNearEnabledRandomOperationsTest.java
new file mode 100644
index 0000000..73985a0
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxNearEnabledRandomOperationsTest.java
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache;
+
+/**
+ *
+ */
+public class CrossCacheTxNearEnabledRandomOperationsTest extends CrossCacheTxRandomOperationsTest {
+ /** {@inheritDoc} */
+ @Override protected boolean nearCacheEnabled() {
+ return true;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxRandomOperationsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxRandomOperationsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxRandomOperationsTest.java
index 1194a27..abd126c 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxRandomOperationsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CrossCacheTxRandomOperationsTest.java
@@ -33,6 +33,7 @@ import org.apache.ignite.cache.CacheWriteSynchronizationMode;
import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.configuration.NearCacheConfiguration;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
@@ -106,6 +107,13 @@ public class CrossCacheTxRandomOperationsTest extends GridCommonAbstractTest {
}
/**
+ * @return Test near cache flag.
+ */
+ protected boolean nearCacheEnabled() {
+ return false;
+ }
+
+ /**
* @throws Exception If failed.
*/
public void testTxOperations() throws Exception {
@@ -144,11 +152,13 @@ public class CrossCacheTxRandomOperationsTest extends GridCommonAbstractTest {
* @param name Cache name.
* @param cacheMode Cache mode.
* @param writeSync Write synchronization mode.
+ * @param nearCache Near cache flag.
* @return Cache configuration.
*/
protected CacheConfiguration cacheConfiguration(String name,
CacheMode cacheMode,
- CacheWriteSynchronizationMode writeSync) {
+ CacheWriteSynchronizationMode writeSync,
+ boolean nearCache) {
CacheConfiguration ccfg = new CacheConfiguration();
ccfg.setName(name);
@@ -161,20 +171,25 @@ public class CrossCacheTxRandomOperationsTest extends GridCommonAbstractTest {
ccfg.setAffinity(new RendezvousAffinityFunction());
+ if (nearCache)
+ ccfg.setNearConfiguration(new NearCacheConfiguration());
+
return ccfg;
}
/**
* @param cacheMode Cache mode.
* @param writeSync Write synchronization mode.
+ * @param nearCache Near cache flag.
* @param ignite Node to use.
* @param name Cache name.
*/
protected void createCache(CacheMode cacheMode,
CacheWriteSynchronizationMode writeSync,
+ boolean nearCache,
Ignite ignite,
String name) {
- ignite.createCache(cacheConfiguration(name, cacheMode, writeSync));
+ ignite.createCache(cacheConfiguration(name, cacheMode, writeSync, nearCache));
}
/**
@@ -189,8 +204,8 @@ public class CrossCacheTxRandomOperationsTest extends GridCommonAbstractTest {
Ignite ignite = ignite(0);
try {
- createCache(cacheMode, writeSync, ignite, CACHE1);
- createCache(cacheMode, writeSync, ignite, CACHE2);
+ createCache(cacheMode, writeSync, nearCacheEnabled(), ignite, CACHE1);
+ createCache(cacheMode, writeSync, false, ignite, CACHE2);
txOperations(PESSIMISTIC, REPEATABLE_READ, crossCacheTx, false);
txOperations(PESSIMISTIC, REPEATABLE_READ, crossCacheTx, true);
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
deleted file mode 100644
index 2e29e3d..0000000
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.processors.cache.distributed.dht;
-
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.configuration.NearCacheConfiguration;
-
-/**
- *
- */
-public class GridNearCacheTxNodeFailureSelfTest extends GridCacheTxNodeFailureSelfTest {
- /** {@inheritDoc} */
- @Override protected CacheConfiguration cacheConfiguration(String igniteInstanceName) {
- return super.cacheConfiguration(igniteInstanceName).setNearConfiguration(new NearCacheConfiguration());
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCrossCacheTxSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCrossCacheTxSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCrossCacheTxSelfTest.java
index bfbafdb..d9529da 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCrossCacheTxSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCrossCacheTxSelfTest.java
@@ -40,6 +40,7 @@ import static org.apache.ignite.transactions.TransactionConcurrency.OPTIMISTIC;
import static org.apache.ignite.transactions.TransactionConcurrency.PESSIMISTIC;
import static org.apache.ignite.transactions.TransactionIsolation.READ_COMMITTED;
import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_READ;
+import static org.apache.ignite.transactions.TransactionIsolation.SERIALIZABLE;
/**
* Tests specific combinations of cross-cache transactions.
@@ -137,6 +138,13 @@ public class IgniteCrossCacheTxSelfTest extends GridCommonAbstractTest {
}
/**
+ * @throws Exception If failed.
+ */
+ public void testOptimisticSerializable() throws Exception {
+ checkTxsSingleOp(OPTIMISTIC, SERIALIZABLE);
+ }
+
+ /**
* @param concurrency Concurrency.
* @param isolation Isolation.
* @throws Exception If failed.
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
index 046e6b5..34eb295 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
@@ -29,7 +29,6 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtA
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtClientRemoveFailureTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtRemoveFailureTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheTxNodeFailureSelfTest;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridNearCacheTxNodeFailureSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.IgniteAtomicLongChangingTopologySelfTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.AtomicPutAllChangingTopologyTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridCacheAtomicClientInvalidPartitionHandlingSelfTest;
@@ -88,7 +87,6 @@ public class IgniteCacheFailoverTestSuite extends TestSuite {
suite.addTestSuite(IgniteAtomicLongChangingTopologySelfTest.class);
suite.addTestSuite(GridCacheTxNodeFailureSelfTest.class);
- suite.addTestSuite(GridNearCacheTxNodeFailureSelfTest.class);
suite.addTestSuite(AtomicPutAllChangingTopologyTest.class);
http://git-wip-us.apache.org/repos/asf/ignite/blob/a5088265/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
index e9cf028..62e6b78 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
@@ -29,6 +29,7 @@ import org.apache.ignite.internal.processors.cache.CacheEnumOperationsSingleNode
import org.apache.ignite.internal.processors.cache.CacheEnumOperationsTest;
import org.apache.ignite.internal.processors.cache.CacheExchangeMessageDuplicatedStateTest;
import org.apache.ignite.internal.processors.cache.CacheMemoryPolicyConfigurationTest;
+import org.apache.ignite.internal.processors.cache.CrossCacheTxNearEnabledRandomOperationsTest;
import org.apache.ignite.internal.processors.cache.CrossCacheTxRandomOperationsTest;
import org.apache.ignite.internal.processors.cache.GridCacheAtomicMessageCountSelfTest;
import org.apache.ignite.internal.processors.cache.GridCacheFinishPartitionsSelfTest;
@@ -242,6 +243,7 @@ public class IgniteCacheTestSuite2 extends TestSuite {
suite.addTest(new TestSuite(IgniteAtomicCacheEntryProcessorNodeJoinTest.class));
suite.addTest(new TestSuite(GridCacheNearTxForceKeyTest.class));
suite.addTest(new TestSuite(CrossCacheTxRandomOperationsTest.class));
+ suite.addTest(new TestSuite(CrossCacheTxNearEnabledRandomOperationsTest.class));
suite.addTest(new TestSuite(IgniteDynamicCacheAndNodeStop.class));
suite.addTest(new TestSuite(CacheLockReleaseNodeLeaveTest.class));
suite.addTest(new TestSuite(NearCacheSyncUpdateTest.class));