MCPcopy Create free account
hub / github.com/LadybugDB/ladybug / getPage

Method getPage

src/storage/disk_array.cpp:380–392  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

378}
379
380void DiskArrayInternal::WriteIterator::getPage(page_idx_t newPageIdx, bool isNewlyAdded) {
381 unpin();
382 if (newPageIdx <= diskArray.lastPageOnDisk) {
383 // Pin new page
384 shadowPageAndFrame = ShadowUtils::createShadowVersionIfNecessaryAndPinPage(newPageIdx,
385 isNewlyAdded, diskArray.fileHandle, *diskArray.shadowFile);
386 } else {
387 shadowPageAndFrame.frame = diskArray.fileHandle.pinPage(newPageIdx,
388 isNewlyAdded ? PageReadPolicy::DONT_READ_PAGE : PageReadPolicy::READ_PAGE);
389 shadowPageAndFrame.originalPage = newPageIdx;
390 shadowPageAndFrame.shadowPage = INVALID_PAGE_IDX;
391 }
392}
393
394DiskArrayInternal::WriteIterator DiskArrayInternal::iter_mut(uint64_t valueSize) {
395 return WriteIterator(valueSize, *this);

Callers 4

initDataFileHandleMethod · 0.45
pinMethod · 0.45
cachePageIntoFrameMethod · 0.45

Calls 1

pinPageMethod · 0.80

Tested by

no test coverage detected