diff options
Diffstat (limited to 'dev-db/mongodb/files')
5 files changed, 381 insertions, 0 deletions
diff --git a/dev-db/mongodb/files/mongodb-8.0.4-scons.patch b/dev-db/mongodb/files/mongodb-8.0.4-scons.patch new file mode 100644 index 000000000000..9edf80d44861 --- /dev/null +++ b/dev-db/mongodb/files/mongodb-8.0.4-scons.patch @@ -0,0 +1,25 @@ +From bc8f2b53c1b99943e49f7bd42ee4d0e1bd8d4562 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com> +Date: Mon, 28 Apr 2025 13:46:34 +0200 +Subject: [PATCH] add PATH backup for scons + +--- + SConstruct | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/SConstruct b/SConstruct +index e9aa2ca0b16..2f04bc9b8f6 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1718,7 +1718,7 @@ envDict = dict( + if get_option('build-tools') == 'next': + SCons.Tool.DefaultToolpath.insert(0, os.path.abspath('site_scons/site_tools/next')) + +-env = Environment(variables=env_vars, **envDict) ++env = Environment(variables=env_vars, ENV={'PATH': os.environ['PATH']}, **envDict) + del envDict + env.AddMethod(lambda env, name, **kwargs: add_option(name, **kwargs), 'AddOption') + +-- +2.49.0 + diff --git a/dev-db/mongodb/files/mongodb-8.0.6-fixes-for-boost-1.85.patch b/dev-db/mongodb/files/mongodb-8.0.6-fixes-for-boost-1.85.patch new file mode 100644 index 000000000000..ed4eff891b76 --- /dev/null +++ b/dev-db/mongodb/files/mongodb-8.0.6-fixes-for-boost-1.85.patch @@ -0,0 +1,267 @@ +From 9a65b01b0d86c48af4e8b40c6142ae501dc11141 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com> +Date: Thu, 17 Apr 2025 17:49:59 +0200 +Subject: [PATCH] fixes for boost 1.85 + +--- + src/mongo/client/sdam/sdam_json_test_runner.cpp | 2 +- + .../sdam/server_selection_json_test_runner.cpp | 2 +- + src/mongo/db/initialize_server_global_state.cpp | 2 +- + src/mongo/db/startup_warnings_mongod.cpp | 3 ++- + .../db/storage/storage_engine_lock_file_posix.cpp | 4 ++-- + src/mongo/db/storage/storage_engine_metadata.cpp | 4 ++-- + .../db/storage/wiredtiger/wiredtiger_kv_engine.cpp | 3 ++- + src/mongo/shell/shell_utils_launcher.cpp | 12 ++++++------ + src/mongo/shell/shell_utils_launcher.h | 2 +- + src/mongo/unittest/golden_test.cpp | 2 +- + src/mongo/unittest/golden_test.h | 2 +- + src/mongo/unittest/golden_test_base.cpp | 4 ++-- + src/mongo/unittest/golden_test_test.cpp | 2 +- + src/mongo/util/options_parser/options_parser.cpp | 2 +- + 14 files changed, 24 insertions(+), 22 deletions(-) + +diff --git a/src/mongo/client/sdam/sdam_json_test_runner.cpp b/src/mongo/client/sdam/sdam_json_test_runner.cpp +index b10f7a25971..e29907a089f 100644 +--- a/src/mongo/client/sdam/sdam_json_test_runner.cpp ++++ b/src/mongo/client/sdam/sdam_json_test_runner.cpp +@@ -41,7 +41,7 @@ + #include <absl/container/node_hash_set.h> + #include <boost/filesystem/directory.hpp> + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/iterator/iterator_facade.hpp> + #include <boost/move/utility_core.hpp> + +diff --git a/src/mongo/client/sdam/server_selection_json_test_runner.cpp b/src/mongo/client/sdam/server_selection_json_test_runner.cpp +index 5b916ff7ce7..d20909fce74 100644 +--- a/src/mongo/client/sdam/server_selection_json_test_runner.cpp ++++ b/src/mongo/client/sdam/server_selection_json_test_runner.cpp +@@ -29,7 +29,7 @@ + + #include <boost/filesystem/directory.hpp> + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/iterator/iterator_facade.hpp> + #include <boost/move/utility_core.hpp> + #include <boost/none.hpp> +diff --git a/src/mongo/db/initialize_server_global_state.cpp b/src/mongo/db/initialize_server_global_state.cpp +index 2e03433fabb..64481d9e227 100644 +--- a/src/mongo/db/initialize_server_global_state.cpp ++++ b/src/mongo/db/initialize_server_global_state.cpp +@@ -332,7 +332,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 a7fcc3e632b..6bf12381704 100644 +--- a/src/mongo/db/startup_warnings_mongod.cpp ++++ b/src/mongo/db/startup_warnings_mongod.cpp +@@ -28,7 +28,8 @@ + */ + + #include "mongo/db/startup_warnings_mongod.h" +- ++#include <boost/filesystem.hpp> ++#include <boost/filesystem/operations.hpp> + #include <fmt/format.h> + #include <fstream> + #include <ios> +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 5116a72bc0e..39182f0e6a0 100644 +--- a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp ++++ b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp +@@ -72,7 +72,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, + "flushMyDirectory couldn't find parent dir for file", + "file"_attr = file.generic_string()); +@@ -80,7 +80,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 690e34d2630..6ecfb48de5b 100644 +--- a/src/mongo/db/storage/storage_engine_metadata.cpp ++++ b/src/mongo/db/storage/storage_engine_metadata.cpp +@@ -232,7 +232,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, + "flushMyDirectory couldn't find parent dir for file", + "file"_attr = file.generic_string()); +@@ -240,7 +240,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/db/storage/wiredtiger/wiredtiger_kv_engine.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp +index ff6c81e38db..632a142ef28 100644 +--- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp ++++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp +@@ -69,6 +69,7 @@ + #include <boost/filesystem/fstream.hpp> + #include <boost/filesystem/operations.hpp> + #include <boost/filesystem/path.hpp> ++#include <boost/system/error_code.hpp> + #include <boost/none.hpp> + #include <boost/none_t.hpp> + #include <boost/optional.hpp> +@@ -182,7 +183,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(); + } + + bool WiredTigerFileVersion::shouldDowngrade(bool hasRecoveryTimestamp) { +diff --git a/src/mongo/shell/shell_utils_launcher.cpp b/src/mongo/shell/shell_utils_launcher.cpp +index ae5175a2a6d..b89fa59ac0d 100644 +--- a/src/mongo/shell/shell_utils_launcher.cpp ++++ b/src/mongo/shell/shell_utils_launcher.cpp +@@ -331,26 +331,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 65337f061b3..fc15c8c0d85 100644 +--- a/src/mongo/shell/shell_utils_launcher.h ++++ b/src/mongo/shell/shell_utils_launcher.h +@@ -29,7 +29,7 @@ + + #pragma once + +-#include <boost/filesystem/convenience.hpp> ++#include <boost/filesystem/operations.hpp> + #include <map> + #include <sstream> + #include <string> +diff --git a/src/mongo/unittest/golden_test.cpp b/src/mongo/unittest/golden_test.cpp +index e01961b6060..be8f70148cf 100644 +--- a/src/mongo/unittest/golden_test.cpp ++++ b/src/mongo/unittest/golden_test.cpp +@@ -33,7 +33,7 @@ + #include <iostream> + + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/optional/optional.hpp> + + #include "mongo/base/init.h" // IWYU pragma: keep +diff --git a/src/mongo/unittest/golden_test.h b/src/mongo/unittest/golden_test.h +index 4c83503a9d3..75390265c75 100644 +--- a/src/mongo/unittest/golden_test.h ++++ b/src/mongo/unittest/golden_test.h +@@ -30,7 +30,7 @@ + #pragma once + + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/optional/optional.hpp> + #include <functional> + #include <string> +diff --git a/src/mongo/unittest/golden_test_base.cpp b/src/mongo/unittest/golden_test_base.cpp +index 1d6c4331c32..a000658b099 100644 +--- a/src/mongo/unittest/golden_test_base.cpp ++++ b/src/mongo/unittest/golden_test_base.cpp +@@ -31,7 +31,7 @@ + #include <boost/filesystem/fstream.hpp> + #include <boost/filesystem/operations.hpp> + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/function/function_base.hpp> + #include <boost/move/utility_core.hpp> + #include <boost/none.hpp> +@@ -116,7 +116,7 @@ GoldenTestEnvironment::GoldenTestEnvironment() : _goldenDataRoot(".") { + fs::path outputRoot; + if (opts.outputRootPattern) { + fs::path pattern(*opts.outputRootPattern); +- outputRoot = pattern.parent_path() / fs::unique_path(pattern.leaf()); ++ outputRoot = pattern.parent_path() / fs::unique_path(pattern.filename()); + } else { + outputRoot = fs::temp_directory_path() / fs::unique_path("out-%%%%-%%%%-%%%%-%%%%"); + } +diff --git a/src/mongo/unittest/golden_test_test.cpp b/src/mongo/unittest/golden_test_test.cpp +index 874d73bf52a..fb64834cfc7 100644 +--- a/src/mongo/unittest/golden_test_test.cpp ++++ b/src/mongo/unittest/golden_test_test.cpp +@@ -32,7 +32,7 @@ + #include <string> + + #include <boost/filesystem/path.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <fmt/format.h> + + #include "mongo/base/string_data.h" +diff --git a/src/mongo/util/options_parser/options_parser.cpp b/src/mongo/util/options_parser/options_parser.cpp +index 46255631358..100b4c7c2bb 100644 +--- a/src/mongo/util/options_parser/options_parser.cpp ++++ b/src/mongo/util/options_parser/options_parser.cpp +@@ -35,7 +35,7 @@ + #include <boost/any/bad_any_cast.hpp> + #include <boost/core/typeinfo.hpp> + #include <boost/filesystem/operations.hpp> +-#include <boost/filesystem/path_traits.hpp> ++#include <boost/filesystem.hpp> + #include <boost/iostreams/categories.hpp> + #include <boost/iostreams/device/file_descriptor.hpp> + #include <boost/iostreams/imbue.hpp> +-- +2.49.0 + diff --git a/dev-db/mongodb/files/mongodb-8.0.6-mozjs-remove-unused-constructor.patch b/dev-db/mongodb/files/mongodb-8.0.6-mozjs-remove-unused-constructor.patch new file mode 100644 index 000000000000..60f231d9ae48 --- /dev/null +++ b/dev-db/mongodb/files/mongodb-8.0.6-mozjs-remove-unused-constructor.patch @@ -0,0 +1,28 @@ +From 67320f150c65ece68118d1c9ecfd1c0a1f69ba6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com> +Date: Mon, 28 Apr 2025 14:16:08 +0200 +Subject: [PATCH] remove unused constructor + +--- + .../mozjs/extract/js/src/threading/ExclusiveData.h | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h b/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h +index 38e89f10a1d..2d8ca831bf7 100644 +--- a/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h ++++ b/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h +@@ -109,11 +109,6 @@ class ExclusiveData { + explicit ExclusiveData(const MutexId& id, Args&&... args) + : lock_(id), value_(std::forward<Args>(args)...) {} + +- ExclusiveData(ExclusiveData&& rhs) +- : lock_(std::move(rhs.lock)), value_(std::move(rhs.value_)) { +- MOZ_ASSERT(&rhs != this, "self-move disallowed!"); +- } +- + ExclusiveData& operator=(ExclusiveData&& rhs) { + this->~ExclusiveData(); + new (mozilla::KnownNotNull, this) ExclusiveData(std::move(rhs)); +-- +2.49.0 + diff --git a/dev-db/mongodb/files/mongodb-8.0.6-skip-reqs-check.patch b/dev-db/mongodb/files/mongodb-8.0.6-skip-reqs-check.patch new file mode 100644 index 000000000000..395abeffe1cf --- /dev/null +++ b/dev-db/mongodb/files/mongodb-8.0.6-skip-reqs-check.patch @@ -0,0 +1,24 @@ +diff --git a/buildscripts/scons2.py b/buildscripts/scons.py +index b1ddc85..b2e61e9 100755 +--- a/buildscripts/scons2.py ++++ b/buildscripts/scons.py +@@ -19,13 +19,13 @@ SITE_TOOLS_DIR = os.path.join(MONGODB_ROOT, 'site_scons') + sys.path = [SCONS_DIR, SITE_TOOLS_DIR] + sys.path + + # pylint: disable=C0413 +-from mongo.pip_requirements import verify_requirements, MissingRequirements ++#from mongo.pip_requirements import verify_requirements, MissingRequirements + +-try: +- verify_requirements() +-except MissingRequirements as ex: +- print(ex) +- sys.exit(1) ++#try: ++# verify_requirements() ++#except MissingRequirements as ex: ++# print(ex) ++# sys.exit(1) + + try: + import SCons.Script diff --git a/dev-db/mongodb/files/mongodb-8.0.6-use-tenacity.patch b/dev-db/mongodb/files/mongodb-8.0.6-use-tenacity.patch new file mode 100644 index 000000000000..1cad9842a533 --- /dev/null +++ b/dev-db/mongodb/files/mongodb-8.0.6-use-tenacity.patch @@ -0,0 +1,37 @@ +From 4903458dd8933b0754da3b00109a042a5ccf23a8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com> +Date: Tue, 29 Apr 2025 18:52:54 +0200 +Subject: [PATCH] replace retry by tenacity + +the retry decorator is used in site_scons/site_tools/integrate_bazel.py +which is part of the retry package not available in Gentoo. +Replace it by tenacity which is well included in Gentoo. +--- + site_scons/site_tools/integrate_bazel.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/site_scons/site_tools/integrate_bazel.py b/site_scons/site_tools/integrate_bazel.py +index b9e2143f23c..995df696d10 100644 +--- a/site_scons/site_tools/integrate_bazel.py ++++ b/site_scons/site_tools/integrate_bazel.py +@@ -16,7 +16,7 @@ import threading + from typing import List, Dict, Set, Tuple, Any + import urllib.request + import requests +-from retry import retry ++from tenacity import retry, stop_after_attempt, wait_fixed + import sys + + import SCons +@@ -477,7 +477,7 @@ def generate_bazel_info_for_ninja(env: SCons.Environment.Environment) -> None: + env["NINJA_BAZEL_INPUTS"] = ninja_bazel_ins + + +-@retry(tries=5, delay=3) ++@retry(stop=stop_after_attempt(3), wait=wait_fixed(0.1)) + def download_path_with_retry(*args, **kwargs): + urllib.request.urlretrieve(*args, **kwargs) + +-- +2.49.0 + |
