MCPcopy Create free account
hub / github.com/RedisGraph/RedisGraph / DataBlock_Ensure

Function DataBlock_Ensure

src/util/datablock/datablock.c:139–152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

137}
138
139void DataBlock_Ensure(DataBlock *dataBlock, uint64_t idx) {
140 ASSERT(dataBlock != NULL);
141
142 // datablock[idx] exists
143 if(dataBlock->itemCap > idx) return;
144
145 // make sure datablock cap > 'idx'
146 int64_t additionalItems = (1 + idx) - dataBlock->itemCap;
147 int64_t additionalBlocks =
148 ITEM_COUNT_TO_BLOCK_COUNT(additionalItems, dataBlock->blockCap);
149 _DataBlock_AddBlocks(dataBlock, additionalBlocks);
150
151 ASSERT(dataBlock->itemCap > idx);
152}
153
154void *DataBlock_GetItem(const DataBlock *dataBlock, uint64_t idx) {
155 ASSERT(dataBlock != NULL);

Callers 3

Graph_EnsureNodeCapFunction · 0.85

Calls 1

_DataBlock_AddBlocksFunction · 0.85

Tested by

no test coverage detected