You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ilya Lantukh (JIRA)" <ji...@apache.org> on 2016/06/27 15:03:52 UTC
[jira] [Comment Edited] (IGNITE-3227) IgniteCache: add method to
calculate size per partition
[ https://issues.apache.org/jira/browse/IGNITE-3227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15339657#comment-15339657 ]
Ilya Lantukh edited comment on IGNITE-3227 at 6/27/16 3:03 PM:
---------------------------------------------------------------
Hi Saikat,
I don't think that implementation of GridCacheAdapter#localSizeLong(int partition, CachePeekMode[] peekModes) is correct. Currently it will count all local entries, even from other partitions.
To obtain partition size, you should use GridDhtLocalPartition#publicSize() method. It also has methods to check whether partition is primary or backup for a given topology version. An instance of GridDhtLocalPartition can be accessed from GridCacheAdapter by calling {code}ctx.topology().localPartition(int p, AffinityTopologyVersion topVer, boolean create){code}.
To count entries in swap and offheap, methods GridCacheSwapManager#swapEntriesCount(int partId) and GridCacheSwapManager#offheapEntriesCount(int partId) should be used, respectively.
was (Author: ilantukh):
Hi [~saikatr],
I don't think that implementation of GridCacheAdapter#localSizeLong(int partition, CachePeekMode[] peekModes) is correct. Currently it will count all local entries, even from other partitions.
To obtain partition size, you should use GridDhtLocalPartition#publicSize() method. It also has methods to check whether partition is primary or backup for a given topology version. An instance of GridDhtLocalPartition can be accessed from GridCacheAdapter by calling {code}ctx.topology().localPartition(int p, AffinityTopologyVersion topVer, boolean create){code}.
To count entries in swap and offheap, methods GridCacheSwapManager#swapEntriesCount(int partId) and GridCacheSwapManager#offheapEntriesCount(int partId) should be used, respectively.
> IgniteCache: add method to calculate size per partition
> -------------------------------------------------------
>
> Key: IGNITE-3227
> URL: https://issues.apache.org/jira/browse/IGNITE-3227
> Project: Ignite
> Issue Type: Improvement
> Reporter: Denis Magda
> Assignee: Saikat Maitra
> Labels: community, important
>
> It makes sense to add size calculation per partition. Actually the following methods should be added to the {{IgniteCache}} API.
> {code}
> public int size(int partition, CachePeekMode... peekModes) throws CacheException;
> public int localSize(int partition, CachePeekMode... peekModes);
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)