| 467 | } |
| 468 | |
| 469 | void BufferManager::cachePageIntoFrame(FileHandle& fileHandle, page_idx_t pageIdx, |
| 470 | PageReadPolicy pageReadPolicy) { |
| 471 | auto pageState = fileHandle.getPageState(pageIdx); |
| 472 | pageState->clearDirty(); |
| 473 | #if BM_MALLOC |
| 474 | pageState->allocatePage(fileHandle.getPageSize()); |
| 475 | if (pageReadPolicy == PageReadPolicy::READ_PAGE) { |
| 476 | fileHandle.readPageFromDisk(pageState->getPage(), pageIdx); |
| 477 | } |
| 478 | #else |
| 479 | if (pageReadPolicy == PageReadPolicy::READ_PAGE) { |
| 480 | fileHandle.readPageFromDisk(getFrame(fileHandle, pageIdx), pageIdx); |
| 481 | } |
| 482 | #endif |
| 483 | } |
| 484 | |
| 485 | void BufferManager::removeFilePagesFromFrames(FileHandle& fileHandle) { |
| 486 | for (auto pageIdx = 0u; pageIdx < fileHandle.getNumPages(); ++pageIdx) { |
nothing calls this directly
no test coverage detected