You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/05/18 11:31:14 UTC
[05/29] incubator-ignite git commit: # ignite-709_3 do not create
system caches on client nodes
# ignite-709_3 do not create system caches on client nodes
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/d02cfe33
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/d02cfe33
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/d02cfe33
Branch: refs/heads/ignite-709_2
Commit: d02cfe3357e6ab62bdfebcedb026beb6604da103
Parents: 7ed0ddf
Author: sboikov <sb...@gridgain.com>
Authored: Thu May 14 15:22:12 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu May 14 15:22:12 2015 +0300
----------------------------------------------------------------------
.../distributed/near/GridNearAtomicCache.java | 5 ++
.../GridCacheClientModesAbstractSelfTest.java | 63 +++++++++++++++++++-
2 files changed, 67 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d02cfe33/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
index ba3357d..041f83a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
@@ -433,6 +433,11 @@ public class GridNearAtomicCache<K, V> extends GridNearCacheAdapter<K, V> {
}
/** {@inheritDoc} */
+ @Nullable @Override public V tryPutIfAbsent(K key, V val) throws IgniteCheckedException {
+ return dht.tryPutIfAbsent(key, val);
+ }
+
+ /** {@inheritDoc} */
@Override public V getAndReplace(K key, V val) throws IgniteCheckedException {
return dht.getAndReplace(key, val);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d02cfe33/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheClientModesAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheClientModesAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheClientModesAbstractSelfTest.java
index c28ee9b..a665601 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheClientModesAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheClientModesAbstractSelfTest.java
@@ -24,6 +24,7 @@ import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.util.typedef.*;
+import java.io.*;
import java.util.concurrent.atomic.*;
import static org.apache.ignite.cache.CacheMode.*;
@@ -110,7 +111,7 @@ public abstract class GridCacheClientModesAbstractSelfTest extends GridCacheAbst
nearOnly.putAll(F.asMap(5, 5, 6, 6, 7, 7, 8, 8, 9, 9));
for (int key = 0; key < 10; key++) {
- for (int i = 1; i < gridCount(); i++) {
+ for (int i = 0; i < gridCount(); i++) {
if (grid(i).affinity(null).isPrimaryOrBackup(grid(i).localNode(), key))
assertEquals(key, grid(i).cache(null).localPeek(key, CachePeekMode.ONHEAP));
}
@@ -120,6 +121,24 @@ public abstract class GridCacheClientModesAbstractSelfTest extends GridCacheAbst
assertNull(nearOnly.localPeek(key, CachePeekMode.PRIMARY, CachePeekMode.BACKUP));
}
+
+ Integer key = 1000;
+
+ nearOnly.put(key, new TestClass1(key));
+
+ if (nearEnabled())
+ assertNotNull(nearOnly.localPeek(key, CachePeekMode.ALL));
+ else
+ assertNull(nearOnly.localPeek(key, CachePeekMode.ALL));
+
+ for (int i = 0; i < gridCount(); i++) {
+ if (grid(i).affinity(null).isPrimaryOrBackup(grid(i).localNode(), key)) {
+ TestClass1 val = (TestClass1)grid(i).cache(null).localPeek(key, CachePeekMode.ONHEAP);
+
+ assertNotNull(val);
+ assertEquals(key.intValue(), val.val);
+ }
+ }
}
/**
@@ -147,6 +166,18 @@ public abstract class GridCacheClientModesAbstractSelfTest extends GridCacheAbst
if (nearEnabled())
assertEquals(key, nearOnly.localPeek(key, CachePeekMode.ONHEAP));
}
+
+ Integer key = 2000;
+
+ dht.put(key, new TestClass2(key));
+
+ TestClass2 val = (TestClass2)nearOnly.get(key);
+
+ assertNotNull(val);
+ assertEquals(key.intValue(), val.val);
+
+ if (nearEnabled())
+ assertNotNull(nearOnly.localPeek(key, CachePeekMode.ONHEAP));
}
/**
@@ -210,4 +241,34 @@ public abstract class GridCacheClientModesAbstractSelfTest extends GridCacheAbst
return null;
}
+
+ /**
+ *
+ */
+ static class TestClass1 implements Serializable {
+ /** */
+ int val;
+
+ /**
+ * @param val Value.
+ */
+ public TestClass1(int val) {
+ this.val = val;
+ }
+ }
+
+ /**
+ *
+ */
+ static class TestClass2 implements Serializable {
+ /** */
+ int val;
+
+ /**
+ * @param val Value.
+ */
+ public TestClass2(int val) {
+ this.val = val;
+ }
+ }
}