From: Jianxin Li Date: Wed, 19 Jun 2024 05:06:49 +0000 (+0800) Subject: test/crimson/seastore: add test case for partial reads X-Git-Tag: v20.0.0~619^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0630af44bacc0c3bd863bc70c1ec8568d75dcfd6;p=ceph.git test/crimson/seastore: add test case for partial reads Signed-off-by: Jianxin Li --- diff --git a/src/test/crimson/seastore/test_object_data_handler.cc b/src/test/crimson/seastore/test_object_data_handler.cc index e7374d1d9b8b..a6233ad2c63f 100644 --- a/src/test/crimson/seastore/test_object_data_handler.cc +++ b/src/test/crimson/seastore/test_object_data_handler.cc @@ -871,6 +871,31 @@ TEST_P(object_data_handler_test_t, overwrite_then_read_within_transaction) { }); } +TEST_P(object_data_handler_test_t, parallel_partial_read) { + run_async([this] { + disable_max_extent_size(); + enable_delta_based_overwrite(); + auto t = create_mutate_transaction(); + auto base = 0; + auto len = 4096 * 10; + write(*t, base, len, 'a'); + submit_transaction(std::move(t)); + + restart(); + epm->check_usage(); + seastar::parallel_for_each( + boost::make_counting_iterator(0lu), + boost::make_counting_iterator(8lu), + [&](auto i) { + return seastar::async([&] { + read(i * 4096, 8192); + }); + }).get(); + disable_delta_based_overwrite(); + enable_max_extent_size(); + }); +} + INSTANTIATE_TEST_SUITE_P( object_data_handler_test, object_data_handler_test_t, diff --git a/src/test/crimson/seastore/test_transaction_manager.cc b/src/test/crimson/seastore/test_transaction_manager.cc index 7ee05f111e7b..012d1819d85a 100644 --- a/src/test/crimson/seastore/test_transaction_manager.cc +++ b/src/test/crimson/seastore/test_transaction_manager.cc @@ -2188,7 +2188,7 @@ TEST_P(tm_single_device_test_t, invalid_lba_mapping_detect) using namespace crimson::os::seastore::lba_manager::btree; { auto t = create_transaction(); - for (int i = 0; i < LEAF_NODE_CAPACITY; i++) { + for (unsigned i = 0; i < LEAF_NODE_CAPACITY; i++) { auto extent = alloc_extent( t, get_laddr_hint(i * 4096),