diff options
Diffstat (limited to 'src/mongo/db/server_options_server_helpers.cpp')
| -rw-r--r-- | src/mongo/db/server_options_server_helpers.cpp | 34 |
1 files changed, 4 insertions, 30 deletions
diff --git a/src/mongo/db/server_options_server_helpers.cpp b/src/mongo/db/server_options_server_helpers.cpp index 32af2db9d99..57f05b16ba4 100644 --- a/src/mongo/db/server_options_server_helpers.cpp +++ b/src/mongo/db/server_options_server_helpers.cpp @@ -37,7 +37,6 @@ #include <boost/algorithm/string/trim.hpp> #include <boost/filesystem.hpp> #include <boost/filesystem/operations.hpp> -#include <cstdlib> #include <fmt/format.h> #include <ios> #include <iostream> @@ -112,34 +111,6 @@ Status setParsedOpts(const moe::Environment& params) { cmdline_utils::censorBSONObj(&serverGlobalParams.parsedOpts); return Status::OK(); } - -bool shouldFork(const moe::Environment& params) { - auto paramYes = [](const moe::Environment& params, const std::string& key) { - return params.count(key) && params[key].as<bool>(); - }; - - auto envVarYes = [](const std::string& envKey) { - auto envVal = getenv(envKey.c_str()); - return envVal && std::string{envVal} == "1"; - }; - - if (paramYes(params, "shutdown")) { - return false; - } - - if (envVarYes("MONGODB_CONFIG_OVERRIDE_NOFORK")) { - LOGV2(7484500, - "Environment variable MONGODB_CONFIG_OVERRIDE_NOFORK == 1, " - "overriding \"processManagement.fork\" to false"); - return false; - } - - if (paramYes(params, "processManagement.fork")) { - return true; - } - - return false; -} } // namespace void printCommandLineOpts(std::ostream* os) { @@ -410,7 +381,10 @@ Status storeServerOptions(const moe::Environment& params) { serverGlobalParams.unixSocketPermissions = params["net.unixDomainSocket.filePermissions"].as<int>(); } - if (shouldFork(params)) { + + if ((params.count("processManagement.fork") && + params["processManagement.fork"].as<bool>() == true) && + (!params.count("shutdown") || params["shutdown"].as<bool>() == false)) { serverGlobalParams.doFork = true; } #endif // _WIN32 |
