summaryrefslogtreecommitdiff
path: root/src/mongo/db/server_options_helpers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/server_options_helpers.cpp')
-rw-r--r--src/mongo/db/server_options_helpers.cpp61
1 files changed, 31 insertions, 30 deletions
diff --git a/src/mongo/db/server_options_helpers.cpp b/src/mongo/db/server_options_helpers.cpp
index 9ed7af1f62a..a3dc5ec59df 100644
--- a/src/mongo/db/server_options_helpers.cpp
+++ b/src/mongo/db/server_options_helpers.cpp
@@ -134,42 +134,43 @@ Status validateBaseOptions(const moe::Environment& params) {
}
}
+ std::map<std::string, std::string> parameters;
if (params.count("setParameter")) {
- const auto parameters = params["setParameter"].as<std::map<std::string, std::string>>();
-
- const bool enableTestCommandsValue = ([&parameters] {
- const auto etc = parameters.find("enableTestCommands");
- if (etc == parameters.end()) {
- return false;
- }
- const auto& val = etc->second;
- return (0 == val.compare("1")) || (0 == val.compare("true"));
- })();
+ parameters = params["setParameter"].as<std::map<std::string, std::string>>();
+ }
- if (enableTestCommandsValue) {
- // Only register failpoint server parameters if enableTestCommands=1.
- globalFailPointRegistry().registerAllFailPointsAsServerParameters();
- } else {
- // Deregister test-only parameters.
- ServerParameterSet::getNodeParameterSet()->disableTestParameters();
- ServerParameterSet::getClusterParameterSet()->disableTestParameters();
+ const bool enableTestCommandsValue = ([&parameters] {
+ const auto etc = parameters.find("enableTestCommands");
+ if (etc == parameters.end()) {
+ return false;
}
+ const auto& val = etc->second;
+ return (0 == val.compare("1")) || (0 == val.compare("true"));
+ })();
+
+ if (enableTestCommandsValue) {
+ // Only register failpoint server parameters if enableTestCommands=1.
+ globalFailPointRegistry().registerAllFailPointsAsServerParameters();
+ } else {
+ // Deregister test-only parameters.
+ ServerParameterSet::getNodeParameterSet()->disableTestParameters();
+ ServerParameterSet::getClusterParameterSet()->disableTestParameters();
+ }
- // Must come after registerAllFailPointsAsServerParameters() above.
- auto* paramSet = ServerParameterSet::getNodeParameterSet();
- for (const auto& setParam : parameters) {
- auto* param = paramSet->getIfExists(setParam.first);
+ // Must come after registerAllFailPointsAsServerParameters() above.
+ auto* paramSet = ServerParameterSet::getNodeParameterSet();
+ for (const auto& setParam : parameters) {
+ auto* param = paramSet->getIfExists(setParam.first);
- if (!param) {
- return {ErrorCodes::BadValue,
- str::stream() << "Unknown --setParameter '" << setParam.first << "'"};
- }
+ if (!param) {
+ return {ErrorCodes::BadValue,
+ str::stream() << "Unknown --setParameter '" << setParam.first << "'"};
+ }
- if (!param->isEnabled()) {
- return {ErrorCodes::BadValue,
- str::stream() << "--setParameter '" << setParam.first
- << "' only available when used with 'enableTestCommands'"};
- }
+ if (!param->isEnabled()) {
+ return {ErrorCodes::BadValue,
+ str::stream() << "--setParameter '" << setParam.first
+ << "' only available when used with 'enableTestCommands'"};
}
}