ignite-4535 : Redesigned semantics of GridDhtLocalPartitions#size() and #publicSize() methods.
(cherry picked from commit dd3884d) Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b5ccfe36 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b5ccfe36 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b5ccfe36 Branch: refs/heads/ignite-3477-master Commit: b5ccfe365ff1a1f1ef949b7505f6058b772671c7 Parents: 141064e Author: Ilya Lantukh <[email protected]> Authored: Tue Mar 21 17:42:06 2017 +0300 Committer: Ilya Lantukh <[email protected]> Committed: Thu Mar 30 16:20:38 2017 +0300 ---------------------------------------------------------------------- .../internal/processors/cache/GridCacheConcurrentMap.java | 2 ++ .../processors/cache/IgniteCacheOffheapManagerImpl.java | 6 +++--- .../cache/distributed/GridDistributedCacheAdapter.java | 2 +- .../cache/distributed/dht/GridDhtLocalPartition.java | 6 +++--- .../cache/distributed/dht/GridDhtPartitionTopologyImpl.java | 2 +- .../processors/cache/CacheDeferredDeleteQueueTest.java | 2 +- .../cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java | 2 +- 7 files changed, 12 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMap.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMap.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMap.java index 408b64a..cd7c031 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMap.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMap.java @@ -62,6 +62,7 @@ public interface GridCacheConcurrentMap { /** * Returns the number of key-value mappings in this map. + * It does not include entries from underlying data store. * * @return the number of key-value mappings in this map. */ @@ -70,6 +71,7 @@ public interface GridCacheConcurrentMap { /** * Returns the number of publicly available key-value mappings in this map. * It excludes entries that are marked as deleted. + * It also does not include entries from underlying data store. * * @return the number of publicly available key-value mappings in this map. */ http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java index 156911b..ef086bb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java @@ -262,7 +262,7 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple for (GridDhtLocalPartition locPart : cctx.topology().currentLocalPartitions()) { if (primary) { if (cctx.affinity().primaryByPartition(locNode, locPart.id(), topVer)) { - cnt += locPart.size(); + cnt += locPart.dataStore().size(); continue; } @@ -270,7 +270,7 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple if (backup) { if (cctx.affinity().backupByPartition(locNode, locPart.id(), topVer)) - cnt += locPart.size(); + cnt += locPart.dataStore().size(); } } @@ -288,7 +288,7 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple else { GridDhtLocalPartition locPart = cctx.topology().localPartition(part, AffinityTopologyVersion.NONE, false); - return locPart == null ? 0 : locPart.size(); + return locPart == null ? 0 : locPart.dataStore().size(); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/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 dbe267d..096ca9f 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 @@ -283,7 +283,7 @@ public abstract class GridDistributedCacheAdapter<K, V> extends GridCacheAdapter else if (modes.heap) { for (GridDhtLocalPartition locPart : ctx.topology().currentLocalPartitions()) { if ((modes.primary && locPart.primary(topVer)) || (modes.backup && locPart.backup(topVer))) - size += locPart.entrySet().size(); + size += locPart.publicSize(); } } } http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java index 05bfdfe..cff533e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java @@ -253,7 +253,7 @@ public class GridDhtLocalPartition implements Comparable<GridDhtLocalPartition>, if (cctx.allowFastEviction()) return map.size() == 0; - return size() == 0 && map.size() == 0; + return store.size() == 0 && map.size() == 0; } /** @@ -296,12 +296,12 @@ public class GridDhtLocalPartition implements Comparable<GridDhtLocalPartition>, /** {@inheritDoc} */ @Override public int size() { - return (int)store.size(); + return map.size(); } /** {@inheritDoc} */ @Override public int publicSize() { - return (int)store.size(); + return map.publicSize(); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java index 38252ef..8c19e50 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java @@ -1960,7 +1960,7 @@ class GridDhtPartitionTopologyImpl implements GridDhtPartitionTopology { if (part == null) continue; - int size = part.size(); + int size = part.dataStore().size(); if (size >= threshold) X.println(">>> Local partition [part=" + part.id() + ", size=" + size + ']'); http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDeferredDeleteQueueTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDeferredDeleteQueueTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDeferredDeleteQueueTest.java index b764d5b..37d3f4d 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDeferredDeleteQueueTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDeferredDeleteQueueTest.java @@ -116,7 +116,7 @@ public class CacheDeferredDeleteQueueTest extends GridCommonAbstractTest { for (GridDhtLocalPartition p : top.currentLocalPartitions()) { Collection<Object> rmvQueue = GridTestUtils.getFieldValue(p, "rmvQueue"); - if (!rmvQueue.isEmpty() || p.size() != 0) + if (!rmvQueue.isEmpty() || p.dataStore().size() != 0) return false; } } http://git-wip-us.apache.org/repos/asf/ignite/blob/b5ccfe36/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java index 32c31d3..1da94d4 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheDhtLocalPartitionAfterRemoveSelfTest.java @@ -76,7 +76,7 @@ public class CacheDhtLocalPartitionAfterRemoveSelfTest extends GridCommonAbstrac cache = grid(g).cache(null); for (GridDhtLocalPartition p : dht(cache).topology().localPartitions()) { - int size = p.size(); + int size = p.dataStore().size(); assertTrue("Unexpected size: " + size, size <= 32); }
