summaryrefslogtreecommitdiff
path: root/src/mongo/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/util')
-rw-r--r--src/mongo/util/cmdline_utils/censor_cmdline.cpp16
-rw-r--r--src/mongo/util/concurrency/thread_pool_test.cpp1
-rw-r--r--src/mongo/util/diagnostic_info.cpp4
-rw-r--r--src/mongo/util/fail_point.cpp1
-rwxr-xr-xsrc/mongo/util/generate_icu_init_cpp.py3
-rw-r--r--src/mongo/util/heap_profiler.cpp1
-rw-r--r--src/mongo/util/icu_init_stub.cpp4
-rw-r--r--src/mongo/util/latch_analyzer.cpp2
-rw-r--r--src/mongo/util/net/openssl_init.cpp2
-rw-r--r--src/mongo/util/net/ssl/detail/impl/schannel.ipp2
-rw-r--r--src/mongo/util/net/ssl_manager.cpp2
-rw-r--r--src/mongo/util/net/ssl_manager_apple.cpp2
-rw-r--r--src/mongo/util/net/ssl_manager_none.cpp8
-rw-r--r--src/mongo/util/net/ssl_manager_openssl.cpp1
-rw-r--r--src/mongo/util/net/ssl_manager_windows.cpp1
-rw-r--r--src/mongo/util/net/ssl_options_client.cpp16
-rw-r--r--src/mongo/util/net/ssl_options_server.cpp72
-rw-r--r--src/mongo/util/net/ssl_options_test.cpp30
-rw-r--r--src/mongo/util/options_parser/options_parser.cpp5
-rw-r--r--src/mongo/util/options_parser/options_parser_init.cpp8
-rw-r--r--src/mongo/util/options_parser/startup_option_init.cpp8
-rw-r--r--src/mongo/util/perfctr_collect.cpp8
-rw-r--r--src/mongo/util/platform_init.cpp2
-rw-r--r--src/mongo/util/processinfo.cpp1
-rw-r--r--src/mongo/util/stacktrace_somap.cpp1
-rw-r--r--src/mongo/util/stacktrace_windows.cpp3
-rw-r--r--src/mongo/util/system_tick_source.cpp1
-rw-r--r--src/mongo/util/tcmalloc_set_parameter.cpp8
-rw-r--r--src/mongo/util/testing_options.cpp2
-rw-r--r--src/mongo/util/testing_proctor.cpp1
-rw-r--r--src/mongo/util/thread_context.cpp1
-rw-r--r--src/mongo/util/time_support_test.cpp3
-rw-r--r--src/mongo/util/version_impl.cpp5
33 files changed, 62 insertions, 163 deletions
diff --git a/src/mongo/util/cmdline_utils/censor_cmdline.cpp b/src/mongo/util/cmdline_utils/censor_cmdline.cpp
index 526414b21e9..fa1d93d7087 100644
--- a/src/mongo/util/cmdline_utils/censor_cmdline.cpp
+++ b/src/mongo/util/cmdline_utils/censor_cmdline.cpp
@@ -77,10 +77,7 @@ MONGO_INITIALIZER_GENERAL(GatherReadctionOptions,
};
std::vector<optionenvironment::OptionDescription> options;
- auto status = optionenvironment::startupOptions.getAllOptions(&options);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(optionenvironment::startupOptions.getAllOptions(&options));
for (const auto& opt : options) {
if (!opt._redact) {
@@ -91,21 +88,14 @@ MONGO_INITIALIZER_GENERAL(GatherReadctionOptions,
gRedactedDottedNames.insert(opt._deprecatedDottedNames.begin(),
opt._deprecatedDottedNames.end());
if (!opt._singleName.empty()) {
- auto status = insertSingleName(opt._singleName);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(insertSingleName(opt._singleName));
}
for (const auto& name : opt._deprecatedSingleNames) {
- auto status = insertSingleName(name);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(insertSingleName(name));
}
}
gGatherOptionsDone = true;
- return Status::OK();
}
bool _isPasswordArgument(const std::string& name) {
diff --git a/src/mongo/util/concurrency/thread_pool_test.cpp b/src/mongo/util/concurrency/thread_pool_test.cpp
index 0b456c6abc1..c5eb7771eb5 100644
--- a/src/mongo/util/concurrency/thread_pool_test.cpp
+++ b/src/mongo/util/concurrency/thread_pool_test.cpp
@@ -55,7 +55,6 @@ using namespace fmt::literals;
MONGO_INITIALIZER(ThreadPoolCommonTests)(InitializerContext*) {
addTestsForThreadPool("ThreadPoolCommon",
[]() { return std::make_unique<ThreadPool>(ThreadPool::Options()); });
- return Status::OK();
}
class ThreadPoolTest : public unittest::Test {
diff --git a/src/mongo/util/diagnostic_info.cpp b/src/mongo/util/diagnostic_info.cpp
index 49076e76c91..bb65abd4a4a 100644
--- a/src/mongo/util/diagnostic_info.cpp
+++ b/src/mongo/util/diagnostic_info.cpp
@@ -216,8 +216,6 @@ MONGO_INITIALIZER_GENERAL(DiagnosticInfo, (/* NO PREREQS */), ("FinalizeDiagnost
};
latch_detail::installDiagnosticListener<DiagnosticListener>();
-
- return Status::OK();
}
MONGO_INITIALIZER(InterruptibleWaitListener)(InitializerContext* context) {
@@ -258,8 +256,6 @@ MONGO_INITIALIZER(InterruptibleWaitListener)(InitializerContext* context) {
};
Interruptible::installWaitListener<WaitListener>();
-
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/fail_point.cpp b/src/mongo/util/fail_point.cpp
index 34a5cb7454e..745983c107e 100644
--- a/src/mongo/util/fail_point.cpp
+++ b/src/mongo/util/fail_point.cpp
@@ -58,7 +58,6 @@ MONGO_FAIL_POINT_DEFINE(dummy); // used by tests in jstests/fail_point
MONGO_INITIALIZER_GENERAL(AllFailPointsRegistered, (), ())
(InitializerContext* context) {
globalFailPointRegistry().freeze();
- return Status::OK();
}
/** The per-thread PRNG used by fail-points. */
diff --git a/src/mongo/util/generate_icu_init_cpp.py b/src/mongo/util/generate_icu_init_cpp.py
index 2d339660c78..f606a2ee800 100755
--- a/src/mongo/util/generate_icu_init_cpp.py
+++ b/src/mongo/util/generate_icu_init_cpp.py
@@ -103,12 +103,11 @@ alignas(16) const uint8_t kRawData[] = {%(decimal_encoded_data)s};
} // namespace
-MONGO_INITIALIZER_GENERAL(LoadICUData, MONGO_NO_PREREQUISITES, ("BeginStartupOptionHandling"))(
+MONGO_INITIALIZER_GENERAL(LoadICUData, (), ("BeginStartupOptionHandling"))(
InitializerContext* context) {
UErrorCode status = U_ZERO_ERROR;
udata_setCommonData(kRawData, &status);
fassert(40088, U_SUCCESS(status));
- return Status::OK();
}
} // namespace mongo
diff --git a/src/mongo/util/heap_profiler.cpp b/src/mongo/util/heap_profiler.cpp
index 9d0e91ae536..7c39be5e84d 100644
--- a/src/mongo/util/heap_profiler.cpp
+++ b/src/mongo/util/heap_profiler.cpp
@@ -713,7 +713,6 @@ MONGO_INITIALIZER_GENERAL(StartHeapProfiling, ("EndStartupOptionHandling"), ("de
(InitializerContext* context) {
if (HeapProfilingEnabled)
HeapProfiler::heapProfiler = new HeapProfiler();
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/icu_init_stub.cpp b/src/mongo/util/icu_init_stub.cpp
index 29838c88b63..70c641fdcc3 100644
--- a/src/mongo/util/icu_init_stub.cpp
+++ b/src/mongo/util/icu_init_stub.cpp
@@ -36,9 +36,7 @@ namespace {
// This initializer provides a no-op definition of the LoadICUData MONGO_INITIALIZER, for use when
// the system version of ICU is used instead of the vendored version.
-MONGO_INITIALIZER(LoadICUData)(InitializerContext* context) {
- return Status::OK();
-}
+MONGO_INITIALIZER(LoadICUData)(InitializerContext* context) {}
} // namespace
} // namespace mongo
diff --git a/src/mongo/util/latch_analyzer.cpp b/src/mongo/util/latch_analyzer.cpp
index 266f610d83d..a77c21d847e 100644
--- a/src/mongo/util/latch_analyzer.cpp
+++ b/src/mongo/util/latch_analyzer.cpp
@@ -95,8 +95,6 @@ public:
MONGO_INITIALIZER_GENERAL(LatchAnalysis, (/* NO PREREQS */), ("FinalizeDiagnosticListeners"))
(InitializerContext* context) {
latch_detail::installDiagnosticListener<DiagnosticListener>();
-
- return Status::OK();
}
// Create a FailPoint to analyze latches more seriously for diagnostic purposes. This can be used
diff --git a/src/mongo/util/net/openssl_init.cpp b/src/mongo/util/net/openssl_init.cpp
index c4980bb0042..0f2c439e5f9 100644
--- a/src/mongo/util/net/openssl_init.cpp
+++ b/src/mongo/util/net/openssl_init.cpp
@@ -177,8 +177,6 @@ MONGO_INITIALIZER(SetupOpenSSL)(InitializerContext*) {
// Setup OpenSSL multithreading callbacks and mutexes
SSLThreadInfo::init();
-
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/net/ssl/detail/impl/schannel.ipp b/src/mongo/util/net/ssl/detail/impl/schannel.ipp
index 99ccf211c2f..b46cffd0cd7 100644
--- a/src/mongo/util/net/ssl/detail/impl/schannel.ipp
+++ b/src/mongo/util/net/ssl/detail/impl/schannel.ipp
@@ -817,8 +817,6 @@ MONGO_INITIALIZER(InitializeSchannelGetServerIdentityFn)(mongo::InitializerConte
SSLHandshakeManager::setSslGetServerIdentityFn(
sc->getFunctionAs<SslGetServerIdentityFn>("SslGetServerIdentity").getValue());
-
- return mongo::Status::OK();
}
} // namespace detail
diff --git a/src/mongo/util/net/ssl_manager.cpp b/src/mongo/util/net/ssl_manager.cpp
index 87772d303c8..39228cdfb8c 100644
--- a/src/mongo/util/net/ssl_manager.cpp
+++ b/src/mongo/util/net/ssl_manager.cpp
@@ -633,8 +633,6 @@ MONGO_INITIALIZER_WITH_PREREQUISITES(SSLManagerLogger, ("SSLManager"))
"expiration"_attr = config.serverCertificateExpirationDate);
}
}
-
- return Status::OK();
}
Status SSLX509Name::normalizeStrings() {
diff --git a/src/mongo/util/net/ssl_manager_apple.cpp b/src/mongo/util/net/ssl_manager_apple.cpp
index 6a20c9bbeda..c4547bf28d5 100644
--- a/src/mongo/util/net/ssl_manager_apple.cpp
+++ b/src/mongo/util/net/ssl_manager_apple.cpp
@@ -38,7 +38,6 @@
#include "mongo/base/checked_cast.h"
#include "mongo/base/init.h"
-#include "mongo/base/initializer_context.h"
#include "mongo/base/status.h"
#include "mongo/base/status_with.h"
#include "mongo/crypto/sha1_block.h"
@@ -1836,7 +1835,6 @@ MONGO_INITIALIZER_WITH_PREREQUISITES(SSLManager, ("EndStartupOptionHandling"))
if (!isSSLServer || (sslGlobalParams.sslMode.load() != SSLParams::SSLMode_disabled)) {
theSSLManagerCoordinator = new SSLManagerCoordinator();
}
- return Status::OK();
}
} // namespace mongo
diff --git a/src/mongo/util/net/ssl_manager_none.cpp b/src/mongo/util/net/ssl_manager_none.cpp
index 696ff2f95a5..178975b2654 100644
--- a/src/mongo/util/net/ssl_manager_none.cpp
+++ b/src/mongo/util/net/ssl_manager_none.cpp
@@ -33,10 +33,8 @@
namespace mongo {
namespace {
-MONGO_INITIALIZER(SSLManager)(InitializerContext*) {
- // we need a no-op initializer so that we can depend on SSLManager as a prerequisite in
- // non-SSL builds.
- return Status::OK();
-}
+// we need a no-op initializer so that we can depend on SSLManager as a prerequisite in
+// non-SSL builds.
+MONGO_INITIALIZER(SSLManager)(InitializerContext*) {}
} // namespace
} // namespace mongo
diff --git a/src/mongo/util/net/ssl_manager_openssl.cpp b/src/mongo/util/net/ssl_manager_openssl.cpp
index cbd75b964f2..1cba80be3a4 100644
--- a/src/mongo/util/net/ssl_manager_openssl.cpp
+++ b/src/mongo/util/net/ssl_manager_openssl.cpp
@@ -1430,7 +1430,6 @@ MONGO_INITIALIZER_WITH_PREREQUISITES(SSLManager, ("SetupOpenSSL", "EndStartupOpt
if (!isSSLServer || (sslGlobalParams.sslMode.load() != SSLParams::SSLMode_disabled)) {
theSSLManagerCoordinator = new SSLManagerCoordinator();
}
- return Status::OK();
}
std::shared_ptr<SSLManagerInterface> SSLManagerInterface::create(const SSLParams& params,
diff --git a/src/mongo/util/net/ssl_manager_windows.cpp b/src/mongo/util/net/ssl_manager_windows.cpp
index 8d434e52416..c8cf3f1339d 100644
--- a/src/mongo/util/net/ssl_manager_windows.cpp
+++ b/src/mongo/util/net/ssl_manager_windows.cpp
@@ -43,7 +43,6 @@
#include <winhttp.h>
#include "mongo/base/init.h"
-#include "mongo/base/initializer_context.h"
#include "mongo/bson/bsonobjbuilder.h"
#include "mongo/bson/util/builder.h"
#include "mongo/config.h"
diff --git a/src/mongo/util/net/ssl_options_client.cpp b/src/mongo/util/net/ssl_options_client.cpp
index fb40ebb2bc7..6422a37d9e3 100644
--- a/src/mongo/util/net/ssl_options_client.cpp
+++ b/src/mongo/util/net/ssl_options_client.cpp
@@ -51,11 +51,8 @@ MONGO_STARTUP_OPTIONS_STORE(SSLClientOptions)(InitializerContext*) {
}
if (params.count("tls.disabledProtocols")) {
- const auto status =
- storeSSLDisabledProtocols(params["tls.disabledProtocols"].as<std::string>());
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(
+ storeSSLDisabledProtocols(params["tls.disabledProtocols"].as<std::string>()));
#if ((MONGO_CONFIG_SSL_PROVIDER != MONGO_CONFIG_SSL_PROVIDER_OPENSSL) || \
(OPENSSL_VERSION_NUMBER >= 0x100000cf)) /* 1.0.0l */
} else {
@@ -72,17 +69,12 @@ MONGO_STARTUP_OPTIONS_STORE(SSLClientOptions)(InitializerContext*) {
#ifdef MONGO_CONFIG_SSL_CERTIFICATE_SELECTORS
if (params.count("tls.certificateSelector")) {
- const auto status =
+ uassertStatusOK(
parseCertificateSelector(&sslGlobalParams.sslCertificateSelector,
"tls.certificateSelector",
- params["tls.certificateSelector"].as<std::string>());
- if (!status.isOK()) {
- return status;
- }
+ params["tls.certificateSelector"].as<std::string>()));
}
#endif
-
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/net/ssl_options_server.cpp b/src/mongo/util/net/ssl_options_server.cpp
index 1e21f2d7b22..0b0f0b4e955 100644
--- a/src/mongo/util/net/ssl_options_server.cpp
+++ b/src/mongo/util/net/ssl_options_server.cpp
@@ -95,7 +95,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
if (swMode.isOK()) {
sslGlobalParams.sslMode.store(swMode.getValue());
} else {
- return {ErrorCodes::BadValue, "unsupported value for tlsMode " + sslModeParam};
+ uasserted(ErrorCodes::BadValue, "unsupported value for tlsMode " + sslModeParam);
}
} else if (params.count("net.ssl.mode")) {
std::string sslModeParam = params["net.ssl.mode"].as<string>();
@@ -103,7 +103,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
if (swMode.isOK()) {
sslGlobalParams.sslMode.store(swMode.getValue());
} else {
- return {ErrorCodes::BadValue, "unsupported value for sslMode " + sslModeParam};
+ uasserted(ErrorCodes::BadValue, "unsupported value for sslMode " + sslModeParam);
}
}
@@ -142,9 +142,9 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
23286,
"net.tls.tlsCipherConfig is deprecated. It will be removed in a future release.");
if (sslGlobalParams.sslCipherConfig != kSSLCipherConfigDefault) {
- return {ErrorCodes::BadValue,
- "net.tls.tlsCipherConfig is incompatible with the openTLSCipherConfig "
- "setParameter"};
+ uasserted(ErrorCodes::BadValue,
+ "net.tls.tlsCipherConfig is incompatible with the openTLSCipherConfig "
+ "setParameter");
}
sslGlobalParams.sslCipherConfig = params["net.tls.tlsCipherConfig"].as<string>();
}
@@ -153,9 +153,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
const auto status =
storeSSLDisabledProtocols(params["net.tls.disabledProtocols"].as<string>(),
SSLDisabledProtocolsMode::kAcceptNegativePrefix);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(status);
#if (MONGO_CONFIG_SSL_PROVIDER != MONGO_CONFIG_SSL_PROVIDER_OPENSSL) || \
(OPENSSL_VERSION_NUMBER >= 0x100000cf) /* 1.0.0l */
} else {
@@ -170,10 +168,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
}
if (params.count("net.tls.logVersions")) {
- const auto status = storeTLSLogVersion(params["net.tls.logVersions"].as<string>());
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(storeTLSLogVersion(params["net.tls.logVersions"].as<string>()));
}
#ifdef MONGO_CONFIG_SSL_CERTIFICATE_SELECTORS
@@ -182,9 +177,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
parseCertificateSelector(&sslGlobalParams.sslCertificateSelector,
"net.tls.certificateSelector",
params["net.tls.certificateSelector"].as<std::string>());
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(status);
}
if (params.count("net.tls.clusterCertificateSelector")) {
@@ -192,9 +185,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
&sslGlobalParams.sslClusterCertificateSelector,
"net.tls.clusterCertificateSelector",
params["net.tls.clusterCertificateSelector"].as<std::string>());
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(status);
}
#endif
@@ -202,11 +193,11 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
if (sslGlobalParams.sslMode.load() != SSLParams::SSLMode_disabled) {
bool usingCertifiateSelectors = params.count("net.tls.certificateSelector");
if (sslGlobalParams.sslPEMKeyFile.size() == 0 && !usingCertifiateSelectors) {
- return {ErrorCodes::BadValue,
- "need tlsCertificateKeyFile or certificateSelector when TLS is enabled"};
+ uasserted(ErrorCodes::BadValue,
+ "need tlsCertificateKeyFile or certificateSelector when TLS is enabled");
}
if (!sslGlobalParams.sslCRLFile.empty() && sslGlobalParams.sslCAFile.empty()) {
- return {ErrorCodes::BadValue, "need tlsCAFile with tlsCRLFile"};
+ uasserted(ErrorCodes::BadValue, "need tlsCAFile with tlsCRLFile");
}
std::string sslCANotFoundError(
@@ -218,7 +209,7 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
// X.509 certificates for auth instead of relying on a CA file.
if (sslGlobalParams.sslCAFile.empty() && !usingCertifiateSelectors &&
clusterAuthMode == ServerGlobalParams::ClusterAuthMode_x509) {
- return {ErrorCodes::BadValue, sslCANotFoundError};
+ uasserted(ErrorCodes::BadValue, sslCANotFoundError);
}
} else if (sslGlobalParams.sslPEMKeyFile.size() || sslGlobalParams.sslPEMKeyPassword.size() ||
sslGlobalParams.sslClusterFile.size() || sslGlobalParams.sslClusterPassword.size() ||
@@ -230,16 +221,16 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
params.count("net.tls.clusterCertificateSelector") ||
#endif
sslGlobalParams.sslWeakCertificateValidation) {
- return {ErrorCodes::BadValue,
- "need to enable TLS via the sslMode/tlsMode flag when "
- "using TLS configuration parameters"};
+ uasserted(ErrorCodes::BadValue,
+ "need to enable TLS via the sslMode/tlsMode flag when "
+ "using TLS configuration parameters");
}
if (clusterAuthMode == ServerGlobalParams::ClusterAuthMode_sendKeyFile ||
clusterAuthMode == ServerGlobalParams::ClusterAuthMode_sendX509 ||
clusterAuthMode == ServerGlobalParams::ClusterAuthMode_x509) {
if (sslGlobalParams.sslMode.load() == SSLParams::SSLMode_disabled) {
- return {ErrorCodes::BadValue, "need to enable TLS via the tlsMode flag"};
+ uasserted(ErrorCodes::BadValue, "need to enable TLS via the tlsMode flag");
}
}
@@ -248,12 +239,10 @@ MONGO_STARTUP_OPTIONS_POST(SSLServerOptions)(InitializerContext*) {
if (clusterAuthMode == ServerGlobalParams::ClusterAuthMode_sendX509 ||
(clusterAuthMode == ServerGlobalParams::ClusterAuthMode_x509 &&
!serverGlobalParams.transitionToAuth)) {
- return {ErrorCodes::BadValue,
- "cannot have x.509 cluster authentication in allowTLS mode"};
+ uasserted(ErrorCodes::BadValue,
+ "cannot have x.509 cluster authentication in allowTLS mode");
}
}
-
- return Status::OK();
}
// Alias --tlsOnNormalPorts as --tlsMode=requireTLS
@@ -295,9 +284,7 @@ Status canonicalizeSSLServerOptions(moe::Environment* params) {
MONGO_STARTUP_OPTIONS_VALIDATE(SSLServerOptions)(InitializerContext*) {
auto status = canonicalizeSSLServerOptions(&moe::startupOptionsParsed);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(status);
#ifdef _WIN32
const auto& params = moe::startupOptionsParsed;
@@ -306,31 +293,29 @@ MONGO_STARTUP_OPTIONS_VALIDATE(SSLServerOptions)(InitializerContext*) {
if (params.count("net.tls.certificateKeyFile") &&
!boost::filesystem::path(params["net.tls.certificateKeyFile"].as<string>())
.is_absolute()) {
- return {ErrorCodes::BadValue,
- "PEMKeyFile requires an absolute file path with Windows services"};
+ uasserted(ErrorCodes::BadValue,
+ "PEMKeyFile requires an absolute file path with Windows services");
}
if (params.count("net.tls.clusterFile") &&
!boost::filesystem::path(params["net.tls.clusterFile"].as<string>()).is_absolute()) {
- return {ErrorCodes::BadValue,
- "clusterFile requires an absolute file path with Windows services"};
+ uasserted(ErrorCodes::BadValue,
+ "clusterFile requires an absolute file path with Windows services");
}
if (params.count("net.tls.CAFile") &&
!boost::filesystem::path(params["net.tls.CAFile"].as<string>()).is_absolute()) {
- return {ErrorCodes::BadValue,
- "CAFile requires an absolute file path with Windows services"};
+ uasserted(ErrorCodes::BadValue,
+ "CAFile requires an absolute file path with Windows services");
}
if (params.count("net.tls.CRLFile") &&
!boost::filesystem::path(params["net.tls.CRLFile"].as<string>()).is_absolute()) {
- return {ErrorCodes::BadValue,
- "CRLFile requires an absolute file path with Windows services"};
+ uasserted(ErrorCodes::BadValue,
+ "CRLFile requires an absolute file path with Windows services");
}
}
#endif
-
- return Status::OK();
}
// This warning must be deferred until after
@@ -343,7 +328,6 @@ MONGO_INITIALIZER_WITH_PREREQUISITES(ImplicitDisableTLS10Warning, ("ServerLogRed
"Automatically disabling TLS 1.0, to force-enable TLS 1.0 "
"specify --sslDisabledProtocols 'none'");
}
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/net/ssl_options_test.cpp b/src/mongo/util/net/ssl_options_test.cpp
index 76ad7f48d0b..c666d9636c2 100644
--- a/src/mongo/util/net/ssl_options_test.cpp
+++ b/src/mongo/util/net/ssl_options_test.cpp
@@ -36,7 +36,6 @@
#include <boost/range/size.hpp>
#include <ostream>
-#include "mongo/base/global_initializer.h"
#include "mongo/base/init.h"
#include "mongo/base/initializer.h"
#include "mongo/db/server_options_base.h"
@@ -54,27 +53,18 @@ namespace moe = mongo::optionenvironment;
namespace mongo {
namespace {
-MONGO_INITIALIZER(ServerLogRedirection)(InitializerContext*) {
- // ssl_options_server.cpp has an initializer which depends on logging.
- // We can stub that dependency out for unit testing purposes.
- return Status::OK();
-}
+// ssl_options_server.cpp has an initializer which depends on logging.
+// We can stub that dependency out for unit testing purposes.
+MONGO_INITIALIZER(ServerLogRedirection)(InitializerContext*) {}
Status executeInitializer(const std::string& name) try {
- const auto* node =
- getGlobalInitializer().getInitializerDependencyGraph().getInitializerNode(name);
- if (!node) {
- return {ErrorCodes::BadValue, str::stream() << "Unknown initializer: '" << name << "'"};
- }
-
- const auto& fn = node->getInitializerFunction();
- if (!fn) {
- return {ErrorCodes::InternalError,
- str::stream() << "Initializer node '" << name << "' has no associated function."};
- }
-
- // The initializers we call don't actually need a context currently.
- return fn(nullptr);
+ InitializerFunction fn = getGlobalInitializer().getInitializerFunctionForTesting(name);
+ uassert(ErrorCodes::InternalError,
+ str::stream() << "Initializer node '" << name << "' has no associated function.",
+ fn);
+ InitializerContext initContext({});
+ fn(&initContext);
+ return Status::OK();
} catch (const DBException& ex) {
return ex.toStatus();
}
diff --git a/src/mongo/util/options_parser/options_parser.cpp b/src/mongo/util/options_parser/options_parser.cpp
index 5a0e5ab8fdb..a01d229514c 100644
--- a/src/mongo/util/options_parser/options_parser.cpp
+++ b/src/mongo/util/options_parser/options_parser.cpp
@@ -85,12 +85,9 @@ bool shouldUseStrict() {
return true;
}
-MONGO_INITIALIZER_GENERAL(OptionsParseUseStrict,
- MONGO_NO_PREREQUISITES,
- ("BeginStartupOptionParsing"))
+MONGO_INITIALIZER_GENERAL(OptionsParseUseStrict, (), ("BeginStartupOptionParsing"))
(InitializerContext* context) {
OptionsParser::useStrict = shouldUseStrict;
- return Status::OK();
}
// The following section contains utility functions that convert between the various objects
diff --git a/src/mongo/util/options_parser/options_parser_init.cpp b/src/mongo/util/options_parser/options_parser_init.cpp
index 304a6d1d152..73272cb8ab5 100644
--- a/src/mongo/util/options_parser/options_parser_init.cpp
+++ b/src/mongo/util/options_parser/options_parser_init.cpp
@@ -51,8 +51,6 @@ MONGO_STARTUP_OPTIONS_PARSE(StartupOptions)(InitializerContext* context) {
std::cerr << "try '" << context->args()[0] << " --help' for more information" << std::endl;
quickExit(EXIT_BADOPTIONS);
}
-
- return Status::OK();
}
MONGO_INITIALIZER_GENERAL(OutputConfig,
@@ -61,16 +59,12 @@ MONGO_INITIALIZER_GENERAL(OutputConfig,
(InitializerContext*) {
if (startupOptionsParsed.count("outputConfig")) {
bool output = false;
- auto status = startupOptionsParsed.get(Key("outputConfig"), &output);
- if (!status.isOK()) {
- return status;
- }
+ uassertStatusOK(startupOptionsParsed.get(Key("outputConfig"), &output));
if (output) {
std::cout << startupOptionsParsed.toYAML() << std::endl;
quickExit(EXIT_CLEAN);
}
}
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/options_parser/startup_option_init.cpp b/src/mongo/util/options_parser/startup_option_init.cpp
index efc1ed82567..6ac10f6098c 100644
--- a/src/mongo/util/options_parser/startup_option_init.cpp
+++ b/src/mongo/util/options_parser/startup_option_init.cpp
@@ -44,12 +44,8 @@ namespace {
std::string makeInitializer(const std::string& name,
const std::vector<std::string>& after,
const std::vector<std::string>& before) {
- uassertStatusOK(getGlobalInitializer().getInitializerDependencyGraph().addInitializer(
- name,
- [](InitializerContext*) { return Status::OK(); },
- [](DeinitializerContext*) { return Status::OK(); },
- after,
- before));
+ getGlobalInitializer().addInitializer(
+ name, [](InitializerContext*) {}, [](DeinitializerContext*) {}, after, before);
return name;
}
diff --git a/src/mongo/util/perfctr_collect.cpp b/src/mongo/util/perfctr_collect.cpp
index 8ee4067b146..6e9ae1dc0f2 100644
--- a/src/mongo/util/perfctr_collect.cpp
+++ b/src/mongo/util/perfctr_collect.cpp
@@ -55,12 +55,10 @@ MONGO_INITIALIZER(PdhInit)(InitializerContext* context) {
hPdhLibrary = LoadLibraryW(L"pdh.dll");
if (nullptr == hPdhLibrary) {
DWORD gle = GetLastError();
- return {ErrorCodes::WindowsPdhError,
- str::stream() << "LoadLibrary of pdh.dll failed with "
- << errnoWithDescription(gle)};
+ uasserted(ErrorCodes::WindowsPdhError,
+ str::stream() << "LoadLibrary of pdh.dll failed with "
+ << errnoWithDescription(gle));
}
-
- return Status::OK();
}
/**
diff --git a/src/mongo/util/platform_init.cpp b/src/mongo/util/platform_init.cpp
index ac75975440f..28cfd6cb9f9 100644
--- a/src/mongo/util/platform_init.cpp
+++ b/src/mongo/util/platform_init.cpp
@@ -113,8 +113,6 @@ MONGO_INITIALIZER(Behaviors_Win32)(InitializerContext*) {
std::min(std::max(int(tc.wPeriodMin), targetResolution), int(tc.wPeriodMax));
invariant(timeBeginPeriod(timerResolution) == TIMERR_NOERROR);
}
-
- return Status::OK();
}
} // namespace mongo
diff --git a/src/mongo/util/processinfo.cpp b/src/mongo/util/processinfo.cpp
index 558415a1705..197ebe00848 100644
--- a/src/mongo/util/processinfo.cpp
+++ b/src/mongo/util/processinfo.cpp
@@ -46,7 +46,6 @@ namespace mongo {
namespace {
MONGO_INITIALIZER(initApplicationInfo)(InitializerContext* context) {
ProcessInfo().appInfo().init(context->args());
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/stacktrace_somap.cpp b/src/mongo/util/stacktrace_somap.cpp
index 767bd42a521..947114affae 100644
--- a/src/mongo/util/stacktrace_somap.cpp
+++ b/src/mongo/util/stacktrace_somap.cpp
@@ -349,7 +349,6 @@ SharedObjectMapInfo& mutableGlobalSharedObjectMapInfo() {
MONGO_INITIALIZER(ExtractSOMap)(InitializerContext*) {
// Call buildObj() again now that there is better VersionInfo.
mutableGlobalSharedObjectMapInfo().setObj(buildObj());
- return Status::OK();
}
const bool dummyToForceEarlyInitializationOfSharedObjectMapInfo = [] {
diff --git a/src/mongo/util/stacktrace_windows.cpp b/src/mongo/util/stacktrace_windows.cpp
index c95911d112c..99ceea9e937 100644
--- a/src/mongo/util/stacktrace_windows.cpp
+++ b/src/mongo/util/stacktrace_windows.cpp
@@ -142,9 +142,6 @@ MONGO_INITIALIZER(IntializeSymbolHandler)(::mongo::InitializerContext* ctx) {
// context. The constructor of SymbolHandler does all the error handling, so we don't need to
// do anything with the return value. Just make sure it gets called.
SymbolHandler::instance();
-
- // Initializing the symbol handler is not a fatal error, so we always return Status::OK() here.
- return Status::OK();
}
/**
diff --git a/src/mongo/util/system_tick_source.cpp b/src/mongo/util/system_tick_source.cpp
index 12defed767c..a11de88fd16 100644
--- a/src/mongo/util/system_tick_source.cpp
+++ b/src/mongo/util/system_tick_source.cpp
@@ -142,7 +142,6 @@ void initTickSource() {}
MONGO_INITIALIZER(SystemTickSourceInit)(InitializerContext* context) {
initTickSource();
SystemTickSource::get();
- return Status::OK();
}
TickSource::Tick SystemTickSource::getTicks() {
diff --git a/src/mongo/util/tcmalloc_set_parameter.cpp b/src/mongo/util/tcmalloc_set_parameter.cpp
index 898d9af9abd..d8ab1f3939f 100644
--- a/src/mongo/util/tcmalloc_set_parameter.cpp
+++ b/src/mongo/util/tcmalloc_set_parameter.cpp
@@ -123,14 +123,12 @@ TCMALLOC_SP_METHODS(AggressiveMemoryDecommit)
namespace {
-MONGO_INITIALIZER_GENERAL(TcmallocConfigurationDefaults,
- MONGO_NO_PREREQUISITES,
- ("BeginStartupOptionHandling"))
+MONGO_INITIALIZER_GENERAL(TcmallocConfigurationDefaults, (), ("BeginStartupOptionHandling"))
(InitializerContext*) {
// Before processing the command line options, if the user has not specified a value in via
// the environment, set tcmalloc.max_total_thread_cache_bytes to its default value.
if (getenv("TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES")) {
- return Status::OK();
+ return;
}
ProcessInfo pi;
@@ -140,7 +138,7 @@ MONGO_INITIALIZER_GENERAL(TcmallocConfigurationDefaults,
(systemMemorySizeMB / 8) * 1024 * 1024; // 1/8 of system memory in bytes
size_t cacheSize = std::min(defaultTcMallocCacheSize, derivedTcMallocCacheSize);
- return setProperty(kMaxTotalThreadCacheBytesPropertyName, cacheSize);
+ uassertStatusOK(setProperty(kMaxTotalThreadCacheBytesPropertyName, cacheSize));
}
} // namespace
diff --git a/src/mongo/util/testing_options.cpp b/src/mongo/util/testing_options.cpp
index dcf98b10a11..32ca0896ef7 100644
--- a/src/mongo/util/testing_options.cpp
+++ b/src/mongo/util/testing_options.cpp
@@ -58,8 +58,6 @@ MONGO_INITIALIZER_GENERAL(TestingDiagnostics,
"Testing behaviors are enabled. This has serious implications for both "
"performance and security.");
}
-
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/testing_proctor.cpp b/src/mongo/util/testing_proctor.cpp
index f9f378fb687..416d482ab62 100644
--- a/src/mongo/util/testing_proctor.cpp
+++ b/src/mongo/util/testing_proctor.cpp
@@ -73,7 +73,6 @@ MONGO_INITIALIZER(DisableTestingDiagnosticsByDefault)(InitializerContext*) {
if (!TestingProctor::instance().isInitialized()) {
TestingProctor::instance().setEnabled(false);
}
- return Status::OK();
}
} // namespace
diff --git a/src/mongo/util/thread_context.cpp b/src/mongo/util/thread_context.cpp
index 3bcde4a9fdf..e08122a4405 100644
--- a/src/mongo/util/thread_context.cpp
+++ b/src/mongo/util/thread_context.cpp
@@ -43,7 +43,6 @@ thread_local ThreadContext::Handle ThreadContext::_handle;
MONGO_INITIALIZER(ThreadContextsInitialized)(InitializerContext*) {
ThreadContext::initializeMain();
- return Status::OK();
}
void ThreadContext::initializeMain() {
diff --git a/src/mongo/util/time_support_test.cpp b/src/mongo/util/time_support_test.cpp
index 635e468692c..17dc35f58f3 100644
--- a/src/mongo/util/time_support_test.cpp
+++ b/src/mongo/util/time_support_test.cpp
@@ -59,10 +59,9 @@ char tzEnvString[] = "TZ=America/New_York";
#pragma warning(disable : 4996)
MONGO_INITIALIZER(SetTimeZoneToEasternForTest)(InitializerContext*) {
if (-1 == putenv(tzEnvString)) {
- return Status(ErrorCodes::BadValue, errnoWithDescription());
+ uasserted(ErrorCodes::BadValue, errnoWithDescription());
}
tzset();
- return Status::OK();
}
#pragma warning(pop)
diff --git a/src/mongo/util/version_impl.cpp b/src/mongo/util/version_impl.cpp
index c729751f0b9..d28459aae90 100644
--- a/src/mongo/util/version_impl.cpp
+++ b/src/mongo/util/version_impl.cpp
@@ -99,12 +99,9 @@ public:
const InterpolatedVersionInfo interpolatedVersionInfo;
-MONGO_INITIALIZER_GENERAL(EnableVersionInfo,
- MONGO_NO_PREREQUISITES,
- ("BeginStartupOptionRegistration"))
+MONGO_INITIALIZER_GENERAL(EnableVersionInfo, (), ("BeginStartupOptionRegistration"))
(InitializerContext*) {
VersionInfoInterface::enable(&interpolatedVersionInfo);
- return Status::OK();
}
} // namespace