From dbca1c7f472301ab93ee74bc3f40fba019428dea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= Date: Mon, 14 Apr 2025 09:50:42 +0200 Subject: [PATCH] fix for boost 1.85 --- src/mongo/db/initialize_server_global_state.cpp | 4 ++-- src/mongo/db/startup_warnings_mongod.cpp | 1 + src/mongo/db/storage/backup_block.cpp | 5 ++++- .../db/storage/storage_engine_lock_file_posix.cpp | 4 ++-- src/mongo/db/storage/storage_engine_metadata.cpp | 4 ++-- src/mongo/scripting/engine.cpp | 2 +- src/mongo/shell/shell_utils_launcher.cpp | 12 ++++++------ src/mongo/shell/shell_utils_launcher.h | 2 +- 10 files changed, 23 insertions(+), 15 deletions(-) diff --git a/src/mongo/db/initialize_server_global_state.cpp b/src/mongo/db/initialize_server_global_state.cpp index 4dc953ff8ce..2e9e22bfd61 100644 --- a/src/mongo/db/initialize_server_global_state.cpp +++ b/src/mongo/db/initialize_server_global_state.cpp @@ -34,7 +34,7 @@ #include "mongo/db/initialize_server_global_state.h" #include "mongo/db/initialize_server_global_state_gen.h" -#include +#include #include #include #include @@ -307,7 +307,7 @@ bool checkAndMoveLogFile(const std::string& absoluteLogpath) { << "\" should name a file, not a directory."); } - if (!serverGlobalParams.logAppend && boost::filesystem::is_regular(absoluteLogpath)) { + if (!serverGlobalParams.logAppend && boost::filesystem::is_regular_file(absoluteLogpath)) { std::string renameTarget = absoluteLogpath + "." + terseCurrentTimeForFilename(); boost::system::error_code ec; boost::filesystem::rename(absoluteLogpath, renameTarget, ec); diff --git a/src/mongo/db/startup_warnings_mongod.cpp b/src/mongo/db/startup_warnings_mongod.cpp index fb4969106af..f19aa6b32c4 100644 --- a/src/mongo/db/startup_warnings_mongod.cpp +++ b/src/mongo/db/startup_warnings_mongod.cpp @@ -34,6 +34,7 @@ #include "mongo/db/startup_warnings_mongod.h" #include +#include #include #ifndef _WIN32 #include diff --git a/src/mongo/db/storage/backup_block.cpp b/src/mongo/db/storage/backup_block.cpp index 9b8dc29f209..10fd6632fc3 100644 --- a/src/mongo/db/storage/backup_block.cpp +++ b/src/mongo/db/storage/backup_block.cpp @@ -30,6 +30,9 @@ #include "mongo/db/storage/backup_block.h" #include +#include +#include +#include #include #include "mongo/base/string_data.h" @@ -59,7 +62,7 @@ std::string extractIdentFromPath(const boost::filesystem::path& dbpath, // Remove the file extension and convert to generic form (i.e. replace "\" with "/" // on windows, no-op on unix). - return boost::filesystem::change_extension(identWithExtension, "").generic_string(); + return boost::filesystem::path(identWithExtension).replace_extension("").generic_string(); } } // namespace details diff --git a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp index 0d67885718a..035b07c2eac 100644 --- a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp +++ b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp @@ -55,7 +55,7 @@ void flushMyDirectory(const boost::filesystem::path& file) { // if called without a fully qualified path it asserts; that makes mongoperf fail. // so make a warning. need a better solution longer term. // massert(40389, str::stream() << "Couldn't find parent dir for file: " << file.string(),); - if (!file.has_branch_path()) { + if (!file.has_parent_path()) { LOGV2(22274, "warning flushMyDirectory couldn't find parent dir for file: {file}", "flushMyDirectory couldn't find parent dir for file", @@ -64,7 +64,7 @@ void flushMyDirectory(const boost::filesystem::path& file) { } - boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts + boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts LOGV2_DEBUG(22275, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string()); diff --git a/src/mongo/db/storage/storage_engine_metadata.cpp b/src/mongo/db/storage/storage_engine_metadata.cpp index 07b21b448e1..87c7cd56cd1 100644 --- a/src/mongo/db/storage/storage_engine_metadata.cpp +++ b/src/mongo/db/storage/storage_engine_metadata.cpp @@ -220,7 +220,7 @@ void flushMyDirectory(const boost::filesystem::path& file) { // if called without a fully qualified path it asserts; that makes mongoperf fail. // so make a warning. need a better solution longer term. // massert(13652, str::stream() << "Couldn't find parent dir for file: " << file.string(),); - if (!file.has_branch_path()) { + if (!file.has_parent_path()) { LOGV2(22283, "warning flushMyDirectory couldn't find parent dir for file: {file}", "flushMyDirectory couldn't find parent dir for file", @@ -229,7 +229,7 @@ void flushMyDirectory(const boost::filesystem::path& file) { } - boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts + boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts LOGV2_DEBUG(22284, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string()); diff --git a/src/mongo/scripting/engine.cpp b/src/mongo/scripting/engine.cpp index 49e920bdf69..d198de51788 100644 --- a/src/mongo/scripting/engine.cpp +++ b/src/mongo/scripting/engine.cpp @@ -34,7 +34,7 @@ #include "mongo/scripting/engine.h" #include -#include +#include #include "mongo/base/string_data.h" #include "mongo/client/dbclient_base.h" diff --git a/src/mongo/shell/shell_utils_launcher.cpp b/src/mongo/shell/shell_utils_launcher.cpp index 0f6b6f2cf42..cf18b896c36 100644 --- a/src/mongo/shell/shell_utils_launcher.cpp +++ b/src/mongo/shell/shell_utils_launcher.cpp @@ -1000,26 +1000,26 @@ void copyDir(const boost::filesystem::path& from, const boost::filesystem::path& boost::filesystem::directory_iterator i(from); while (i != end) { boost::filesystem::path p = *i; - if (p.leaf() == "metrics.interim" || p.leaf() == "metrics.interim.temp") { + if (p.filename() == "metrics.interim" || p.filename() == "metrics.interim.temp") { // Ignore any errors for metrics.interim* files as these may disappear during copy boost::system::error_code ec; - boost::filesystem::copy_file(p, to / p.leaf(), ec); + boost::filesystem::copy_file(p, to / p.filename(), ec); if (ec) { LOGV2_INFO(22814, "Skipping copying of file from '{from}' to " "'{to}' due to: {error}", "Skipping copying of file due to error" "from"_attr = p.generic_string(), - "to"_attr = (to / p.leaf()).generic_string(), + "to"_attr = (to / p.filename()).generic_string(), "error"_attr = ec.message()); } - } else if (p.leaf() != "mongod.lock" && p.leaf() != "WiredTiger.lock") { + } else if (p.filename() != "mongod.lock" && p.filename() != "WiredTiger.lock") { if (boost::filesystem::is_directory(p)) { - boost::filesystem::path newDir = to / p.leaf(); + boost::filesystem::path newDir = to / p.filename(); boost::filesystem::create_directory(newDir); copyDir(p, newDir); } else { - boost::filesystem::copy_file(p, to / p.leaf()); + boost::filesystem::copy_file(p, to / p.filename()); } } ++i; diff --git a/src/mongo/shell/shell_utils_launcher.h b/src/mongo/shell/shell_utils_launcher.h index 14a6ce06390..960f78a71e8 100644 --- a/src/mongo/shell/shell_utils_launcher.h +++ b/src/mongo/shell/shell_utils_launcher.h @@ -29,7 +29,7 @@ #pragma once -#include +#include #include #include #include