# ignite-51

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/86c549f1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/86c549f1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/86c549f1

Branch: refs/heads/ignite-user-req
Commit: 86c549f13ac26e732c36b4fde422f3f1ff5a3765
Parents: 440be6e
Author: sboikov <sboi...@gridgain.com>
Authored: Thu Mar 5 17:54:05 2015 +0300
Committer: sboikov <sboi...@gridgain.com>
Committed: Thu Mar 5 17:59:50 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheSwapManager.java  |  4 +-
 .../GridCacheOnCopyFlagAbstractSelfTest.java    | 57 ++++++++++++++++----
 2 files changed, 49 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/86c549f1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
index 9d4b942..e75ccd6 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
@@ -1452,9 +1452,9 @@ public class GridCacheSwapManager extends 
GridCacheManagerAdapter {
 
                 try {
                     if (cctx.isDht())
-                        cctx.dht().near().removex(cur.getKey(), CU.<K, 
V>empty());
+                        cctx.dht().near().removex(cur.getKey());
                     else
-                        cctx.cache().removex(cur.getKey(), CU.<K, V>empty());
+                        cctx.cache().removex(cur.getKey());
                 }
                 finally {
                     cur = null;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/86c549f1/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
index dd61b1d..20f7f58 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
@@ -31,6 +31,7 @@ import javax.cache.processor.*;
 import java.io.*;
 import java.util.*;
 
+import static org.apache.ignite.cache.CacheDistributionMode.*;
 import static org.junit.Assert.*;
 
 /**
@@ -68,7 +69,7 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
         super.afterTest();
 
         interceptor.delegate(new CacheInterceptorAdapter<TestKey, 
TestValue>());
-        
+
         for (int i = 0; i < gridCount(); i++)
             cache(i, null).clearLocally();
     }
@@ -95,10 +96,11 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
         assertNotNull(interceptor);
 
         ccfg.setInterceptor(interceptor);
-        
+
         ccfg.setAtomicityMode(atomicityMode());
         ccfg.setDistributionMode(distributionMode());
         ccfg.setCacheMode(cacheMode());
+        ccfg.setDistributionMode(PARTITIONED_ONLY);
 
         return ccfg;
     }
@@ -222,9 +224,9 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
             }
         });
 
-        for (int i = 0; i < ITER_CNT; i++) 
+        for (int i = 0; i < ITER_CNT; i++)
             cache.invoke(new TestKey(i, i), new EntryProcessor<TestKey, 
TestValue, Object>() {
-                @Override public Object process(MutableEntry<TestKey, 
TestValue> entry, Object... arguments) 
+                @Override public Object process(MutableEntry<TestKey, 
TestValue> entry, Object... arguments)
                     throws EntryProcessorException {
                     // Check that we have correct value and key.
                     assertEquals(entry.getKey().key(), entry.getKey().field());
@@ -251,13 +253,42 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
     public void testPutGet() throws Exception {
         IgniteCache<TestKey, TestValue> cache = grid(0).jcache(null);
 
-        Map<Integer, TestValue> maps = new HashMap<>();
-        
-        for (int i = 0; i < ITER_CNT; i++) 
-            cache.put(new TestKey(i, i), new TestValue(i));
+        Map<TestKey, TestValue> map = new HashMap<>();
+
+        for (int i = 0; i < ITER_CNT; i++) {
+            TestKey key = new TestKey(i, i);
+            TestValue val = new TestValue(i);
+
+            cache.put(key, val);
+
+            map.put(key, val);
+        }
+
+        GridCacheAdapter cache0 = internalCache(cache);
+
+        GridCacheContext cctx = cache0.context();
+
+        for (Map.Entry<TestKey, TestValue> e : map.entrySet()) {
+            GridCacheEntryEx entry = cache0.peekEx(e.getKey());
 
-        for (Cache.Entry<Object, Object> entry : internalCache(0, 
null).entrySet())
-            assertNotSame(entry.getValue(), 
maps.get(((TestKey)entry.getKey()).key()));
+            assertNotNull("No entry for key: " + e.getKey(), entry);
+
+            TestKey key0 = entry.key().value(cctx.cacheObjectContext(), false);
+
+            assertNotSame(key0, e.getKey());
+
+            TestKey key1 = entry.key().value(cctx.cacheObjectContext(), true);
+
+            assertNotSame(key0, key1);
+
+            TestValue val0 = entry.rawGet().value(cctx.cacheObjectContext(), 
false);
+
+            assertNotSame(val0, e.getValue());
+
+            TestValue val1 = entry.rawGet().value(cctx.cacheObjectContext(), 
true);
+
+            assertNotSame(val0, val1);
+        }
     }
 
     /**
@@ -274,6 +305,7 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
          * Constructor.
          *
          * @param key Key.
+         * @param field Field.
          */
         public TestKey(int key, int field) {
             this.key = key;
@@ -337,6 +369,11 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
             key = in.readInt();
             field = in.readInt();
         }
+
+        /** {@inheritDoc} */
+        @Override public String toString() {
+            return "TestKey [field=" + field + ", key=" + key + ']';
+        }
     }
 
     /**

Reply via email to