Class CacheFreeList
- java.lang.Object
-
- org.apache.ignite.internal.processors.cache.persistence.DataStructure
-
- org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList
-
- org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList<CacheDataRow>
-
- org.apache.ignite.internal.processors.cache.persistence.freelist.CacheFreeList
-
- All Implemented Interfaces:
FreeList<CacheDataRow>,ReuseList
public class CacheFreeList extends AbstractFreeList<CacheDataRow>
FreeList implementation for cache.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList
PagesList.PagesCache, PagesList.Stripe
-
-
Field Summary
-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList
bucketsSize, changed, DFLT_PAGES_LIST_TRY_LOCK_ATTEMPTS, IGNITE_PAGES_LIST_STRIPES_PER_BUCKET, IGNITE_PAGES_LIST_TRY_LOCK_ATTEMPTS, log, pageCacheChanged
-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.DataStructure
grpId, grpName, metrics, pageFlag, pageIoRslvr, pageMem, reuseList, rnd, wal
-
-
Constructor Summary
Constructors Constructor Description CacheFreeList(int cacheGrpId, String name, DataRegion dataRegion, @Nullable IgniteWriteAheadLogManager wal, long metaPageId, boolean initNew, PageLockTrackerManager pageLockTrackerManager, GridKernalContext ctx, @Nullable AtomicLong pageListCacheLimit, byte pageFlag)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidinsertDataRow(CacheDataRow row, IoStatisticsHolder statHolder)-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList
addForRecycle, casBucket, dumpStatistics, emptyDataPages, freeSpace, getBucket, getBucketCache, getBucketIndex, getPageFreeSpace, initRecycledPage, insertDataRows, isReuseBucket, recycledPagesCount, removeDataRowByLink, takeRecycledPage, toString, updateDataRow
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList
bucketsCount, bucketSize, cachedPagesCount, corruptedFreeListException, corruptedFreeListException, corruptedFreeListException, init, initRecycledPage0, initReusedPage, metaPageId, put, removeDataPage, saveMetadata, storedPagesCount, stripesCount, takeEmptyPage
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.DataStructure
acquirePage, allocatePage, allocatePage, allocatePageNoReuse, close, groupId, init, name, needWalDeltaRecord, pageSize, randomInt, read, read, readLock, readUnlock, recyclePage, releasePage, tryWriteLock, write, write, write, write, writeLock, writeUnlock, writeUnlock
-
-
-
-
Constructor Detail
-
CacheFreeList
public CacheFreeList(int cacheGrpId, String name, DataRegion dataRegion, @Nullable @Nullable IgniteWriteAheadLogManager wal, long metaPageId, boolean initNew, PageLockTrackerManager pageLockTrackerManager, GridKernalContext ctx, @Nullable @Nullable AtomicLong pageListCacheLimit, byte pageFlag) throws IgniteCheckedException- Parameters:
cacheGrpId- Cache group id.name- Name.dataRegion- Data region.wal- Wal.metaPageId- Meta page id.initNew- Initialize new.pageFlag- Default flag value for allocated pages.- Throws:
IgniteCheckedException
-
-
Method Detail
-
insertDataRow
public void insertDataRow(CacheDataRow row, IoStatisticsHolder statHolder) throws IgniteCheckedException
- Specified by:
insertDataRowin interfaceFreeList<CacheDataRow>- Overrides:
insertDataRowin classAbstractFreeList<CacheDataRow>- Parameters:
row- Row.statHolder- Statistics holder to track IO operations.- Throws:
IgniteCheckedException- If failed.
-
-