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

Function DataBlock_New

src/util/datablock/datablock.c:82–102  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80//------------------------------------------------------------------------------
81
82DataBlock *DataBlock_New
83(
84 uint64_t blockCap,
85 uint64_t itemCap,
86 uint itemSize,
87 fpDestructor fp
88) {
89 DataBlock *dataBlock = rm_malloc(sizeof(DataBlock));
90 dataBlock->blocks = NULL;
91 dataBlock->itemSize = itemSize + ITEM_HEADER_SIZE;
92 dataBlock->itemCount = 0;
93 dataBlock->blockCount = 0;
94 dataBlock->blockCap = blockCap;
95 dataBlock->deletedIdx = array_new(uint64_t, 128);
96 dataBlock->destructor = fp;
97
98 _DataBlock_AddBlocks(dataBlock,
99 ITEM_COUNT_TO_BLOCK_COUNT(itemCap, dataBlock->blockCap));
100
101 return dataBlock;
102}
103
104uint64_t DataBlock_ItemCount(const DataBlock *dataBlock) {
105 return dataBlock->itemCount;

Callers 8

UndoLog_NewFunction · 0.85
NewResultSetFunction · 0.85
Graph_NewFunction · 0.85
test_dataBlockNewFunction · 0.85
test_dataBlockAddItemFunction · 0.85
test_dataBlockScanFunction · 0.85
test_dataBlockRemoveItemFunction · 0.85

Calls 2

rm_mallocFunction · 0.85
_DataBlock_AddBlocksFunction · 0.85

Tested by 5

test_dataBlockNewFunction · 0.68
test_dataBlockAddItemFunction · 0.68
test_dataBlockScanFunction · 0.68
test_dataBlockRemoveItemFunction · 0.68