]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test/crimson/seastore/test_transaction_manager: the scatter_allocation case shouldn...
authorXuehan Xu <xuxuehan@qianxin.com>
Sat, 9 May 2026 02:15:24 +0000 (10:15 +0800)
committerXuehan Xu <xuxuehan@qianxin.com>
Fri, 31 Jul 2026 01:40:19 +0000 (09:40 +0800)
In scatter_allocation, an extent is split into several
small ones, and the last allocation is supposed to fail,
in which case, the small extents that belong to the same
allocation wouldn't be attached to the parent lba leaf
node. Sumitting the transaction would trigger assertions,
and is not consistent with the behavior of nornal crimson
OSDs.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/test/crimson/seastore/test_transaction_manager.cc

index e34d003a3e07d7a20f4962066f7de10ca739dcac..71edd935a28b85728936bb7974bb59d7958c0cb9 100644 (file)
@@ -1904,13 +1904,12 @@ TEST_P(tm_random_block_device_test_t, scatter_allocation)
     epm->prefill_fragmented_devices();
     auto t = create_transaction();
     for (int i = 0; i < 1958; i++) {
+      logger().info("scatter_allocation: {}", i);
       auto extents = alloc_extents(t, (ADDR + i * 16384).checked_to_laddr(), 16384, 'a');
     }
     alloc_extents_deemed_fail(t, (ADDR + 1958 * 16384).checked_to_laddr(), 16384, 'a');
     check_mappings(t);
     check();
-    submit_transaction(std::move(t));
-    check();
   });
 }