public interface PageMemoryEx extends PageMemory
FLAG_DATA, FLAG_IDX, INDEX_PARTITION, MAX_PARTITION_ID| Modifier and Type | Method and Description |
|---|---|
long |
acquirePage(int grpId,
long pageId,
boolean restore) |
GridMultiCollectionWrapper<FullPageId> |
beginCheckpoint()
Gets a collection of dirty page IDs since the last checkpoint.
|
IgniteInternalFuture<Void> |
clearAsync(GridPredicate3<Integer,Long,Integer> pred,
boolean cleanDirty)
Asynchronously clears pages satisfying the given predicate.
|
void |
finishCheckpoint()
Finishes checkpoint operation.
|
Integer |
getForCheckpoint(FullPageId pageId,
ByteBuffer outBuf,
CheckpointMetricsTracker tracker)
Gets page byte buffer for the checkpoint procedure.
|
int |
invalidate(int grpId,
int partId)
Marks partition as invalid / outdated.
|
long |
metaPageId(int grpId)
Gets or allocates metadata page for specified grpId.
|
void |
onCacheGroupDestroyed(int grpId)
Clears internal metadata of destroyed cache group.
|
long |
partitionMetaPageId(int grpId,
int partId)
Gets or allocates partition metadata page for specified grpId and partId.
|
boolean |
safeToUpdate()
Heuristic method which allows a thread to check if it safe to start memory struture modifications
in regard with checkpointing.
|
long |
writeLock(int grpId,
long pageId,
long page,
boolean restore) |
void |
writeUnlock(int grpId,
long pageId,
long page,
Boolean walPlc,
boolean dirtyFlag,
boolean restore) |
checkpointBufferPagesCount, loadedPages, pageBuffer, pageSize, systemPageSizestart, stopallocatePage, freePageacquirePage, isDirty, readLock, readLockForce, readUnlock, releasePage, tryWriteLock, writeLock, writeUnlocklong writeLock(int grpId,
long pageId,
long page,
boolean restore)
grpId - Group ID.pageId - Page ID.page - Page pointer.restore - Determines if the page is locked for restore.void writeUnlock(int grpId,
long pageId,
long page,
Boolean walPlc,
boolean dirtyFlag,
boolean restore)
grpId - Group ID.pageId - Page ID.page - Page pointer.walPlc - True if page should be recorded to WAL, false if the page must not
be recorded and null for the default behavior.dirtyFlag - Determines whether the page was modified since the last checkpoint.restore - Determines if the page is locked for restore.long metaPageId(int grpId)
throws IgniteCheckedException
grpId - Group ID.IgniteCheckedException - If failed.long partitionMetaPageId(int grpId,
int partId)
throws IgniteCheckedException
grpId - Group ID.partId - Partition ID.IgniteCheckedException - If failed.long acquirePage(int grpId,
long pageId,
boolean restore)
throws IgniteCheckedException
grpId - Cache group ID.pageId - Page id.restore - Get page for restoreIgniteCheckedException - If failed.Will not read page from file if it is not present in memoryboolean safeToUpdate()
False if there are too many dirty pages and a thread should wait for a
checkpoint to begin.GridMultiCollectionWrapper<FullPageId> beginCheckpoint() throws IgniteException
IgniteException - If checkpoint has been already started and was not finished.void finishCheckpoint()
@Nullable Integer getForCheckpoint(FullPageId pageId, ByteBuffer outBuf, CheckpointMetricsTracker tracker)
pageId - Page ID to get byte buffer for. The page ID must be present in the collection returned by
the beginCheckpoint() method call.outBuf - Temporary buffer to write changes into.tracker - Checkpoint metrics tracker.Partition tag if data was read, null otherwise (data already saved to storage).IgniteException - If failed to obtain page data.int invalidate(int grpId,
int partId)
grpId - Group ID.partId - Partition ID.void onCacheGroupDestroyed(int grpId)
grpId - Cache group ID.IgniteInternalFuture<Void> clearAsync(GridPredicate3<Integer,Long,Integer> pred, boolean cleanDirty)
pred - Predicate for cache group id, pageId and partition tag.cleanDirty - Flag indicating that dirty pages collection should be cleaned.
Follow @ApacheIgnite
Ignite Fabric : ver. 2.4.0 Release Date : March 5 2018