| 182 | } |
| 183 | |
| 184 | static void appendStorageInfoForChunkedGroup(StorageInfoLocalState* localState, |
| 185 | DataChunk& outputChunk, StorageInfoOutputData& outputData, ChunkedNodeGroup* chunkedGroup) { |
| 186 | auto numColumns = chunkedGroup->getNumColumns(); |
| 187 | outputData.columnIdx = 0; |
| 188 | for (auto i = 0u; i < numColumns; i++) { |
| 189 | for (auto* segment : chunkedGroup->getColumnChunk(i).getSegments()) { |
| 190 | appendStorageInfoForChunkData(localState, outputChunk, outputData, |
| 191 | *outputData.columns[i], *segment); |
| 192 | } |
| 193 | } |
| 194 | if (chunkedGroup->getFormat() == NodeGroupDataFormat::CSR) { |
| 195 | auto& chunkedCSRGroup = chunkedGroup->cast<ChunkedCSRNodeGroup>(); |
| 196 | for (auto* segment : chunkedCSRGroup.getCSRHeader().offset->getSegments()) { |
| 197 | appendStorageInfoForChunkData(localState, outputChunk, outputData, |
| 198 | *outputData.columns[numColumns], *segment, true); |
| 199 | } |
| 200 | for (auto* segment : chunkedCSRGroup.getCSRHeader().length->getSegments()) { |
| 201 | appendStorageInfoForChunkData(localState, outputChunk, outputData, |
| 202 | *outputData.columns[numColumns + 1], *segment, true); |
| 203 | } |
| 204 | } |
| 205 | } |
| 206 | |
| 207 | static void appendStorageInfoForNodeGroup(StorageInfoLocalState* localState, DataChunk& outputChunk, |
| 208 | StorageInfoOutputData& outputData, NodeGroup* nodeGroup) { |
no test coverage detected