From: Casey Bodley Date: Fri, 21 Oct 2022 14:35:05 +0000 (-0400) Subject: test/librados: use spawn submodule instead of boost::asio::spawn X-Git-Tag: v18.1.0~749^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F48585%2Fhead;p=ceph.git test/librados: use spawn submodule instead of boost::asio::spawn there appear to be breaking API changes to spawn() in boost 1.80, use the spawn submodule instead Signed-off-by: Casey Bodley --- diff --git a/src/test/librados/CMakeLists.txt b/src/test/librados/CMakeLists.txt index fc033766cc4..b20cd8da4d1 100644 --- a/src/test/librados/CMakeLists.txt +++ b/src/test/librados/CMakeLists.txt @@ -60,7 +60,7 @@ target_link_libraries(ceph_test_rados_api_aio_pp add_executable(ceph_test_rados_api_asio asio.cc) target_link_libraries(ceph_test_rados_api_asio global - librados ${UNITTEST_LIBS} Boost::coroutine Boost::context) + librados ${UNITTEST_LIBS} spawn) add_executable(ceph_test_rados_api_list list.cc diff --git a/src/test/librados/asio.cc b/src/test/librados/asio.cc index f92c42c72a5..9f86b4472b5 100644 --- a/src/test/librados/asio.cc +++ b/src/test/librados/asio.cc @@ -19,10 +19,9 @@ #include "common/errno.h" #include "global/global_init.h" -#define BOOST_COROUTINES_NO_DEPRECATION_WARNING #include #include -#include +#include #include #define dout_subsys ceph_subsys_rados @@ -113,20 +112,20 @@ TEST_F(AsioRados, AsyncReadYield) { boost::asio::io_service service; - auto success_cr = [&] (boost::asio::yield_context yield) { + auto success_cr = [&] (spawn::yield_context yield) { boost::system::error_code ec; auto bl = librados::async_read(service, io, "exist", 256, 0, yield[ec]); EXPECT_FALSE(ec); EXPECT_EQ("hello", bl.to_str()); }; - boost::asio::spawn(service, success_cr); + spawn::spawn(service, success_cr); - auto failure_cr = [&] (boost::asio::yield_context yield) { + auto failure_cr = [&] (spawn::yield_context yield) { boost::system::error_code ec; auto bl = librados::async_read(service, io, "noexist", 256, 0, yield[ec]); EXPECT_EQ(boost::system::errc::no_such_file_or_directory, ec); }; - boost::asio::spawn(service, failure_cr); + spawn::spawn(service, failure_cr); service.run(); } @@ -178,22 +177,22 @@ TEST_F(AsioRados, AsyncWriteYield) bufferlist bl; bl.append("hello"); - auto success_cr = [&] (boost::asio::yield_context yield) { + auto success_cr = [&] (spawn::yield_context yield) { boost::system::error_code ec; librados::async_write(service, io, "exist", bl, bl.length(), 0, yield[ec]); EXPECT_FALSE(ec); EXPECT_EQ("hello", bl.to_str()); }; - boost::asio::spawn(service, success_cr); + spawn::spawn(service, success_cr); - auto failure_cr = [&] (boost::asio::yield_context yield) { + auto failure_cr = [&] (spawn::yield_context yield) { boost::system::error_code ec; librados::async_write(service, snapio, "exist", bl, bl.length(), 0, yield[ec]); EXPECT_EQ(boost::system::errc::read_only_file_system, ec); }; - boost::asio::spawn(service, failure_cr); + spawn::spawn(service, failure_cr); service.run(); } @@ -251,7 +250,7 @@ TEST_F(AsioRados, AsyncReadOperationYield) { boost::asio::io_service service; - auto success_cr = [&] (boost::asio::yield_context yield) { + auto success_cr = [&] (spawn::yield_context yield) { librados::ObjectReadOperation op; op.read(0, 0, nullptr, nullptr); boost::system::error_code ec; @@ -260,9 +259,9 @@ TEST_F(AsioRados, AsyncReadOperationYield) EXPECT_FALSE(ec); EXPECT_EQ("hello", bl.to_str()); }; - boost::asio::spawn(service, success_cr); + spawn::spawn(service, success_cr); - auto failure_cr = [&] (boost::asio::yield_context yield) { + auto failure_cr = [&] (spawn::yield_context yield) { librados::ObjectReadOperation op; op.read(0, 0, nullptr, nullptr); boost::system::error_code ec; @@ -270,7 +269,7 @@ TEST_F(AsioRados, AsyncReadOperationYield) yield[ec]); EXPECT_EQ(boost::system::errc::no_such_file_or_directory, ec); }; - boost::asio::spawn(service, failure_cr); + spawn::spawn(service, failure_cr); service.run(); } @@ -335,23 +334,23 @@ TEST_F(AsioRados, AsyncWriteOperationYield) bufferlist bl; bl.append("hello"); - auto success_cr = [&] (boost::asio::yield_context yield) { + auto success_cr = [&] (spawn::yield_context yield) { librados::ObjectWriteOperation op; op.write_full(bl); boost::system::error_code ec; librados::async_operate(service, io, "exist", &op, 0, yield[ec]); EXPECT_FALSE(ec); }; - boost::asio::spawn(service, success_cr); + spawn::spawn(service, success_cr); - auto failure_cr = [&] (boost::asio::yield_context yield) { + auto failure_cr = [&] (spawn::yield_context yield) { librados::ObjectWriteOperation op; op.write_full(bl); boost::system::error_code ec; librados::async_operate(service, snapio, "exist", &op, 0, yield[ec]); EXPECT_EQ(boost::system::errc::read_only_file_system, ec); }; - boost::asio::spawn(service, failure_cr); + spawn::spawn(service, failure_cr); service.run(); }