checking_mappings(coll_root, *t);
}
+ void submit_transaction(TransactionRef &&t) {
+ tm->submit_transaction(std::move(t)).unsafe_get0();
+ segment_cleaner->run_until_halt().get0();
+ }
};
TEST_F(collection_manager_test_t, basic)
{
auto t = tm->create_transaction();
coll_root = collection_manager->mkfs(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
test_coll_mappings.emplace(cid, coll_info_t(i));
}
checking_mappings(coll_root, *t);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
EXPECT_EQ(test_coll_mappings.size(), 20);
}
collection_manager->remove(coll_root, *t, ite.first).unsafe_get0();
test_coll_mappings.erase(ite.first);
}
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
replay();
{
auto t = tm->create_transaction();
auto list_ret = collection_manager->list(coll_root, *t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
EXPECT_EQ(list_ret.size(), test_coll_mappings.size());
}
});
{
auto t = tm->create_transaction();
coll_root = collection_manager->mkfs(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
auto old_location = coll_root.get_location();
collection_manager->create(coll_root, *t, cid, coll_info_t(i)).unsafe_get0();
test_coll_mappings.emplace(cid, coll_info_t(i));
}
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
EXPECT_NE(old_location, coll_root.get_location());
checking_mappings(coll_root);
{
auto t = tm->create_transaction();
coll_root = collection_manager->mkfs(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
collection_manager->create(coll_root, *t, cid, coll_info_t(i)).unsafe_get0();
test_coll_mappings.emplace(cid, coll_info_t(i));
}
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto iter1= test_coll_mappings.begin();
EXPECT_NE(iter1->second.split_bits, iter2->second.split_bits);
auto t = tm->create_transaction();
collection_manager->update(coll_root, *t, iter1->first, iter2->second).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
iter1->second.split_bits = iter2->second.split_bits;
}
replay();
logger().debug("{}: end", __func__);
}
-
+ void submit_transaction(TransactionRef &&t) {
+ tm->submit_transaction(std::move(t)).unsafe_get0();
+ segment_cleaner->run_until_halt().get0();
+ }
};
TEST_F(extentmap_manager_test_t, basic)
{
auto t = tm->create_transaction();
extmap_root = extmap_manager->initialize_extmap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
uint32_t len = 4096;
logger().debug("first transaction");
[[maybe_unused]] auto addref = insert_extent(extmap_root, *t, lo, {lo, len});
[[maybe_unused]] auto seekref = find_extent(extmap_root, *t, lo, len);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
auto seekref = find_extent(extmap_root, *t, lo, len);
rm_extent(extmap_root, *t, lo, {seekref.front().laddr, len});
[[maybe_unused]] auto seekref2 = findno_extent(extmap_root, *t, lo, len);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
logger().debug("third transaction");
[[maybe_unused]] auto seekref = findno_extent(extmap_root, *t, lo, len);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
});
}
{
auto t = tm->create_transaction();
extmap_root = extmap_manager->initialize_extmap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
uint32_t len = 4096;
uint32_t lo = 0;
}
}
logger().debug("force split submit transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
check_mappings(extmap_root);
}
});
{
auto t = tm->create_transaction();
extmap_root = extmap_manager->initialize_extmap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
uint32_t len = 4096;
uint32_t lo = 0;
}
}
logger().debug("submitting transaction");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
if (i % 50 == 0) {
check_mappings(extmap_root);
}
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
t = tm->create_transaction();
}
if (i % 100 == 0) {
}
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
});
}
{
auto t = tm->create_transaction();
extmap_root = extmap_manager->initialize_extmap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
replay();
}
uint32_t len = 4096;
lo += len;
}
logger().debug("submitting transaction");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
replay();
auto t = tm->create_transaction();
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
t = tm->create_transaction();
}
if (i% 100 == 0){
}
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
replay();
check_mappings(extmap_root);
});
omap_manager = omap_manager::create_omap_manager(*tm);
logger().debug("{}: end", __func__);
}
+
+ void submit_transaction(TransactionRef &&t) {
+ tm->submit_transaction(std::move(t)).unsafe_get0();
+ segment_cleaner->run_until_halt().get0();
+ }
};
TEST_F(omap_manager_test_t, basic)
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
string key = "owner";
logger().debug("first transaction");
set_key(omap_root, *t, key, val);
get_value(omap_root, *t, key);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
get_value(omap_root, *t, key);
rm_key(omap_root, *t, key);
get_value(omap_root, *t, key);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
{
auto t = tm->create_transaction();
logger().debug("third transaction");
get_value(omap_root, *t, key);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
});
}
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
for (unsigned i = 0; i < 40; i++) {
auto t = tm->create_transaction();
}
}
logger().debug("force split submit transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
check_mappings(omap_root);
}
});
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
for (unsigned i = 0; i < 80; i++) {
}
}
logger().debug("submitting transaction");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
if (i % 50 == 0) {
check_mappings(omap_root);
}
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
t = tm->create_transaction();
}
if (i % 100 == 0) {
i++;
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
});
}
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
for (unsigned i = 0; i < 50; i++) {
}
}
logger().debug("submitting transaction");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
if (i % 50 == 0) {
check_mappings(omap_root);
}
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
t = tm->create_transaction();
}
if (i % 50 == 0) {
break;
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
check_mappings(omap_root);
});
}
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
string temp;
for (unsigned i = 0; i < 40; i++) {
}
}
logger().debug("force split submit transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
check_mappings(omap_root);
}
{
auto t = tm->create_transaction();
clear(omap_root, *t);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
});
}
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
for (unsigned i = 0; i < 10; i++) {
logger().debug("opened split transaction");
}
}
logger().debug("submitting transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
check_mappings(omap_root);
});
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
for (unsigned i = 0; i < 8; i++) {
}
}
logger().debug("submitting transaction");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
auto t = tm->create_transaction();
int i = 0;
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
t = tm->create_transaction();
}
if (i % 50 == 0) {
i++;
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
check_mappings(omap_root);
});
}
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
replay();
}
}
}
logger().debug("submitting transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
replay();
check_mappings(omap_root);
if (i % 10 == 0) {
logger().debug("submitting transaction i= {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
replay();
t = tm->create_transaction();
}
i++;
}
logger().debug("finally submitting transaction ");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
replay();
check_mappings(omap_root);
});
{
auto t = tm->create_transaction();
omap_root = omap_manager->initialize_omap(*t).unsafe_get0();
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
logger().debug("set big keys");
set_random_key(omap_root, *t);
}
logger().debug("submitting transaction i = {}", i);
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
logger().debug("set small keys");
for (unsigned i = 0; i < 100; i++) {
set_random_key(omap_root, *t);
}
logger().debug("submitting transaction last");
- tm->submit_transaction(std::move(t)).unsafe_get();
+ submit_transaction(std::move(t));
}
check_mappings(omap_root);
});