public class DelayedDirtyPageStoreWrite extends Object implements PageStoreWriter
writePage(FullPageId,
ByteBuffer, int) and then sent to real implementation by finishReplacement().| Constructor and Description |
|---|
DelayedDirtyPageStoreWrite(PageStoreWriter flushDirtyPage,
ThreadLocal<ByteBuffer> byteBufThreadLoc,
int pageSize,
DelayedPageReplacementTracker tracker) |
| Modifier and Type | Method and Description |
|---|---|
void |
finishReplacement()
Runs actual write if required.
|
void |
writePage(FullPageId fullPageId,
ByteBuffer byteBuf,
int tag)
Callback for write page.
|
public DelayedDirtyPageStoreWrite(PageStoreWriter flushDirtyPage, ThreadLocal<ByteBuffer> byteBufThreadLoc, int pageSize, DelayedPageReplacementTracker tracker)
flushDirtyPage - real writer to save page to store.byteBufThreadLoc - thread local buffers to use for pages copying.pageSize - page size.tracker - tracker to lock/unlock page reads.public void writePage(FullPageId fullPageId, ByteBuffer byteBuf, int tag)
PageMemoryEx will copy page content to buffer before call.writePage in interface PageStoreWriterfullPageId - Page ID to get byte buffer for. The page ID must be present in the collection returned by
the PageMemoryEx.beginCheckpoint(IgniteInternalFuture) method call.byteBuf - Temporary buffer to write changes into.tag - Partition generation if data was read, null otherwise (data already saved to storage).public void finishReplacement()
throws IgniteCheckedException
IgniteCheckedException - if write failed.
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.8.1 Release Date : May 21 2020