run_async([this] {
uint64_t block_size = tm->get_block_size();
auto pool = KVPool<onode_item_t>::create_range(
- {0, 100}, {32, 64, 128, 256, 512}, block_size);
+ {0, 10000}, {32, 64, 128, 256, 512}, block_size);
auto start = pool.begin();
auto end = pool.end();
with_onodes_write(start, end,
[](auto& t, auto& onode, auto& item) {
item.initialize(t, onode);
});
+ restart();
validate_onodes(start, end);
validate_list_onodes(pool);
[](auto& t, auto& onode, auto& item) {
item.modify(t, onode);
});
+ restart();
validate_onodes(start, end);
pool.shuffle();
[](auto& t, auto& onode, auto& item) {
item.modify(t, onode);
});
+ restart();
validate_onodes(start, end);
pool.shuffle();
return manager->erase_onode(t, onode_ref);
}).unsafe_get0();
});
+ restart();
validate_erased(rd_start, rd_end);
pool.erase_from_random(rd_start, rd_end);
start = pool.begin();