| 465 | } |
| 466 | |
| 467 | std::unique_ptr<ChunkedNodeGroup> InMemChunkedNodeGroup::flush(const Transaction* transaction, |
| 468 | PageAllocator& pageAllocator) { |
| 469 | std::vector<std::unique_ptr<ColumnChunk>> flushedChunks(getNumColumns()); |
| 470 | for (auto i = 0u; i < getNumColumns(); i++) { |
| 471 | flushedChunks[i] = flushInternal(getColumnChunk(i), pageAllocator); |
| 472 | } |
| 473 | auto flushedChunkedGroup = |
| 474 | std::make_unique<ChunkedNodeGroup>(std::move(flushedChunks), 0 /*startRowIdx*/); |
| 475 | flushedChunkedGroup->versionInfo = std::make_unique<VersionInfo>(); |
| 476 | DASSERT(flushedChunkedGroup->getNumRows() == numRows); |
| 477 | flushedChunkedGroup->versionInfo->append(transaction->getID(), 0, numRows); |
| 478 | return flushedChunkedGroup; |
| 479 | } |
| 480 | |
| 481 | std::unique_ptr<ChunkedNodeGroup> ChunkedNodeGroup::flushEmpty(MemoryManager& mm, |
| 482 | const std::vector<common::LogicalType>& columnTypes, bool enableCompression, uint64_t capacity, |
no test coverage detected