public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter implements IgniteCacheOffheapManager
Modifier and Type | Class and Description |
---|---|
protected class |
IgniteCacheOffheapManagerImpl.CacheDataRowStore |
protected class |
IgniteCacheOffheapManagerImpl.CacheDataStoreImpl |
protected static class |
IgniteCacheOffheapManagerImpl.CacheDataTree |
static class |
IgniteCacheOffheapManagerImpl.DataInnerIO |
static class |
IgniteCacheOffheapManagerImpl.DataLeafIO |
protected static class |
IgniteCacheOffheapManagerImpl.PendingEntriesTree |
static class |
IgniteCacheOffheapManagerImpl.PendingEntryInnerIO |
static class |
IgniteCacheOffheapManagerImpl.PendingEntryLeafIO |
IgniteCacheOffheapManager.CacheDataStore, IgniteCacheOffheapManager.OffheapInvokeClosure
Modifier and Type | Field and Description |
---|---|
protected ConcurrentMap<Integer,IgniteCacheOffheapManager.CacheDataStore> |
partDataStores |
protected IgniteCacheOffheapManagerImpl.PendingEntriesTree |
pendingEntries |
protected IgniteCacheOffheapManager.CacheDataStore |
rmvdStore |
cctx, log, starting
Constructor and Description |
---|
IgniteCacheOffheapManagerImpl() |
context, kernalStartInfo, kernalStopInfo, log, onDisconnected, onKernalStart, onKernalStart0, onKernalStop, printMemoryStats, start, startInfo, stop, stopInfo, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
onDisconnected, onKernalStart, onKernalStop, printMemoryStats, start, stop
protected final ConcurrentMap<Integer,IgniteCacheOffheapManager.CacheDataStore> partDataStores
protected final IgniteCacheOffheapManager.CacheDataStore rmvdStore
protected IgniteCacheOffheapManagerImpl.PendingEntriesTree pendingEntries
public GridAtomicLong globalRemoveId()
globalRemoveId
in interface IgniteCacheOffheapManager
protected void start0() throws IgniteCheckedException
start0
in class GridCacheManagerAdapter
IgniteCheckedException
- If failed.protected void initDataStructures() throws IgniteCheckedException
IgniteCheckedException
- If failed.protected void stop0(boolean cancel, boolean destroy)
stop0
in class GridCacheManagerAdapter
cancel
- Cancel flag.destroy
- Cache destroy flag.protected void onKernalStop0(boolean cancel)
onKernalStop0
in class GridCacheManagerAdapter
cancel
- Cancel flag.protected void destroyCacheDataStructures(boolean destroy)
public IgniteCacheOffheapManager.CacheDataStore dataStore(GridDhtLocalPartition part)
dataStore
in interface IgniteCacheOffheapManager
part
- Partition.public long entriesCount()
entriesCount
in interface IgniteCacheOffheapManager
public long entriesCount(boolean primary, boolean backup, AffinityTopologyVersion topVer) throws IgniteCheckedException
entriesCount
in interface IgniteCacheOffheapManager
primary
- Primary entries flag.backup
- Backup entries flag.topVer
- Topology version.IgniteCheckedException
- If failed.public long entriesCount(int part)
entriesCount
in interface IgniteCacheOffheapManager
part
- Partition.public void invoke(KeyCacheObject key, GridDhtLocalPartition part, IgniteCacheOffheapManager.OffheapInvokeClosure c) throws IgniteCheckedException
invoke
in interface IgniteCacheOffheapManager
key
- Key.part
- Partition.c
- Tree update closure.IgniteCheckedException
- If failed.public void update(KeyCacheObject key, CacheObject val, GridCacheVersion ver, long expireTime, int partId, GridDhtLocalPartition part, @Nullable CacheDataRow oldRow) throws IgniteCheckedException
update
in interface IgniteCacheOffheapManager
key
- Key.val
- Value.ver
- Version.expireTime
- Expire time.partId
- Partition number.part
- Partition.oldRow
- Old row if available.IgniteCheckedException
- If failed.public void remove(KeyCacheObject key, int partId, GridDhtLocalPartition part) throws IgniteCheckedException
remove
in interface IgniteCacheOffheapManager
key
- Key.partId
- Partition number.part
- Partition.IgniteCheckedException
- If failed.@Nullable public CacheDataRow read(GridCacheMapEntry entry) throws IgniteCheckedException
read
in interface IgniteCacheOffheapManager
entry
- Cache entry.IgniteCheckedException
- If failed.public boolean containsKey(GridCacheMapEntry entry)
containsKey
in interface IgniteCacheOffheapManager
public void onPartitionCounterUpdated(int part, long cntr)
onPartitionCounterUpdated
in interface IgniteCacheOffheapManager
part
- Partition.cntr
- Partition counter.public void onPartitionInitialCounterUpdated(int part, long cntr)
onPartitionInitialCounterUpdated
in interface IgniteCacheOffheapManager
part
- Partitioncntr
- New initial counterpublic long lastUpdatedPartitionCounter(int part)
lastUpdatedPartitionCounter
in interface IgniteCacheOffheapManager
part
- Partition ID.public void clear(boolean readers)
clear
in interface IgniteCacheOffheapManager
readers
- True
to clear readers.public int onUndeploy(ClassLoader ldr)
onUndeploy
in interface IgniteCacheOffheapManager
ldr
- Class loader.public long offHeapAllocatedSize()
offHeapAllocatedSize
in interface IgniteCacheOffheapManager
public <K,V> GridCloseableIterator<javax.cache.Cache.Entry<K,V>> entriesIterator(boolean primary, boolean backup, AffinityTopologyVersion topVer, boolean keepBinary) throws IgniteCheckedException
entriesIterator
in interface IgniteCacheOffheapManager
primary
- True
if need return primary entries.backup
- True
if need return backup entries.topVer
- Topology version to use.keepBinary
- Keep binary flag.IgniteCheckedException
- If failed.public GridCloseableIterator<KeyCacheObject> keysIterator(int part) throws IgniteCheckedException
keysIterator
in interface IgniteCacheOffheapManager
part
- Partition.IgniteCheckedException
- If failed.public GridIterator<CacheDataRow> iterator(boolean primary, boolean backups, AffinityTopologyVersion topVer) throws IgniteCheckedException
iterator
in interface IgniteCacheOffheapManager
primary
- Primary entries flag.backups
- Backup entries flag.topVer
- Topology version.IgniteCheckedException
- If failed.public GridIterator<CacheDataRow> iterator(int part) throws IgniteCheckedException
iterator
in interface IgniteCacheOffheapManager
part
- Partition.IgniteCheckedException
- If failed.public RootPage rootPageForIndex(String idxName) throws IgniteCheckedException
rootPageForIndex
in interface IgniteCacheOffheapManager
idxName
- Index name.IgniteCheckedException
- If failed.public void dropRootPageForIndex(String idxName) throws IgniteCheckedException
dropRootPageForIndex
in interface IgniteCacheOffheapManager
idxName
- Index name.IgniteCheckedException
- If failed.public ReuseList reuseListForIndex(String idxName)
reuseListForIndex
in interface IgniteCacheOffheapManager
public IgniteRebalanceIterator rebalanceIterator(int part, AffinityTopologyVersion topVer, Long partCntr) throws IgniteCheckedException
rebalanceIterator
in interface IgniteCacheOffheapManager
part
- Partition.partCntr
- Partition counter to get historical data if available.IgniteCheckedException
- If failed.public final IgniteCacheOffheapManager.CacheDataStore createCacheDataStore(int p) throws IgniteCheckedException
createCacheDataStore
in interface IgniteCacheOffheapManager
p
- Partition.IgniteCheckedException
- If failed.protected IgniteCacheOffheapManager.CacheDataStore createCacheDataStore0(int p) throws IgniteCheckedException
p
- Partition.IgniteCheckedException
- If failed.public Iterable<IgniteCacheOffheapManager.CacheDataStore> cacheDataStores()
cacheDataStores
in interface IgniteCacheOffheapManager
public void destroyCacheDataStore(int p, IgniteCacheOffheapManager.CacheDataStore store) throws IgniteCheckedException
destroyCacheDataStore
in interface IgniteCacheOffheapManager
p
- Partition ID.store
- Data store.IgniteCheckedException
protected final String treeName(int p)
p
- Partition.public boolean expire(IgniteInClosure2X<GridCacheEntryEx,GridCacheVersion> c, int amount) throws IgniteCheckedException
expire
in interface IgniteCacheOffheapManager
c
- Closure.IgniteCheckedException
- If failed.public long expiredSize() throws IgniteCheckedException
expiredSize
in interface IgniteCacheOffheapManager
IgniteCheckedException
- If failed to get number of pending entries.
Follow @ApacheIgnite
Ignite Fabric : ver. 2.0.0 Release Date : April 30 2017