IGNITE-54-55 Bug fix: don't forget to check obsoleteOrDeleted() when iterate 
over entries.


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

Branch: refs/heads/ignite-111
Commit: 05697b4a0d5e348f61a96302c05e9fecb72c832d
Parents: 052b436
Author: sevdokimov <sergey.evdoki...@jetbrains.com>
Authored: Fri Feb 6 11:36:21 2015 +0300
Committer: sevdokimov <sergey.evdoki...@jetbrains.com>
Committed: Fri Feb 6 11:36:21 2015 +0300

----------------------------------------------------------------------
 .../cache/distributed/GridDistributedCacheAdapter.java         | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/05697b4a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
index 937438c..5365ec3 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
@@ -229,8 +229,10 @@ public abstract class GridDistributedCacheAdapter<K, V> 
extends GridCacheAdapter
                 try (IgniteDataLoader<K, V> dataLdr = 
ignite.dataLoader(cacheName)) {
                     for (GridDhtLocalPartition<K, V> locPart : 
dht.topology().currentLocalPartitions()) {
                         if (!locPart.isEmpty() && locPart.primary(topVer)) {
-                            for (GridDhtCacheEntry<K, V> o : locPart.entries())
-                                dataLdr.removeData(o.key());
+                            for (GridDhtCacheEntry<K, V> o : 
locPart.entries()) {
+                                if (!o.obsoleteOrDeleted())
+                                    dataLdr.removeData(o.key());
+                            }
                         }
                     }
                 }

Reply via email to