From ef0df4b4b11b9902256513ac7214eeb3aae02e9f Mon Sep 17 00:00:00 2001 From: ZetaMap <56844734+ZetaMap@users.noreply.github.com> Date: Fri, 23 May 2025 16:36:13 +0200 Subject: [PATCH 1/2] Fixed ld error when compiling xbcloud-t Fix: ``` /usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: CMakeFiles/xbcloud-t.dir/s3.cc.o: in function `xbcloud::S3_client::retry_error(xbcloud::Http_response*, bool*)': ./percona-xtrabackup/storage/innobase/xtrabackup/src/xbcloud/s3.cc:750:(.text._ZN7xbcloud9S3_client11retry_errorEPNS_13Http_responseEPb+0x1dd): undefined reference to `xbcloud::S3_ec2_instance::fetch_metadata()' collect2: error: ld returned 1 exit status make[2]: *** [storage/innobase/xtrabackup/src/xbcloud/CMakeFiles/xbcloud-t.dir/build.make:180: storage/innobase/xtrabackup/src/xbcloud/xbcloud-t] Error 1 make[1]: *** [CMakeFiles/Makefile2:13540: storage/innobase/xtrabackup/src/xbcloud/CMakeFiles/xbcloud-t.dir/all] Error 2 ``` --- storage/innobase/xtrabackup/src/xbcloud/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/storage/innobase/xtrabackup/src/xbcloud/CMakeLists.txt b/storage/innobase/xtrabackup/src/xbcloud/CMakeLists.txt index 26ad6b47bdfe..e1d99e099400 100644 --- a/storage/innobase/xtrabackup/src/xbcloud/CMakeLists.txt +++ b/storage/innobase/xtrabackup/src/xbcloud/CMakeLists.txt @@ -79,6 +79,7 @@ IF (WITH_UNIT_TESTS AND CMAKE_VERSION VERSION_GREATER 3.22.1) ADD_EXECUTABLE(xbcloud-t xbcloud-t.cc http.cc s3.cc + s3_ec2.cc azure.cc swift.cc) From a5d9dd73cb2c2211408e0b0bcff248ab4cb0e193 Mon Sep 17 00:00:00 2001 From: ZetaMap <56844734+ZetaMap@users.noreply.github.com> Date: Fri, 23 May 2025 16:39:51 +0200 Subject: [PATCH 2/2] Fixed override warning Fix: ``` In file included from /usr/x86_64-pc-linux-gnu/include/gmock/gmock.h:58, from ./percona-xtrabackup/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc:1: ./percona-xtrabackup/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc:14:22: warning: 'virtual testing::internal::Function::Result Mock_http_client::make_request(testing::internal::ElemFromList<0, const xbcloud::Http_request&, xbcloud::Http_response&>::type, testing::internal::ElemFromList<1, const xbcloud::Http_request&, xbcloud::Http_response&>::type) const' can be marked override [-Wsuggest-override] 14 | MOCK_CONST_METHOD2(make_request, bool(const Http_request &, Http_response &)); | ``` --- storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc b/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc index 905e945bb402..4ac8006f95da 100644 --- a/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc +++ b/storage/innobase/xtrabackup/src/xbcloud/xbcloud-t.cc @@ -11,7 +11,7 @@ using namespace ::testing; class Mock_http_client : public xbcloud::Http_client { public: - MOCK_CONST_METHOD2(make_request, bool(const Http_request &, Http_response &)); + MOCK_METHOD(bool, make_request, (const Http_request &, Http_response &), (const, override)); }; MATCHER_P3(Response, code, body, headers, "") {