summaryrefslogtreecommitdiff
path: root/src/mongo/db/server_options_server_helpers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/server_options_server_helpers.cpp')
-rw-r--r--src/mongo/db/server_options_server_helpers.cpp34
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