diff options
author | Katherine Walker <katherine.walker@mongodb.com> | 2017-09-28 16:26:35 -0400 |
---|---|---|
committer | Judah Schvimer <judah@mongodb.com> | 2017-10-30 12:29:08 -0400 |
commit | 918524be973eb056909f035df141b0dd5765ead1 (patch) | |
tree | e2c7b53bd94b6615695bccb752414258ff0ed8b8 /src | |
parent | 44c83a821606db1c8b34b9c2a1ee2c485d3fff39 (diff) | |
download | mongo-918524be973eb056909f035df141b0dd5765ead1.tar.gz |
SERVER-29649 Add startupWarning for replset running with --nojournal when writeConcernMajorityJournalDefault is not false
(cherry picked from commit 5fe40b170094b08ead496eb694113892bb711373)
Diffstat (limited to 'src')
-rw-r--r-- | src/mongo/db/repl/replication_coordinator_impl.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_impl.cpp b/src/mongo/db/repl/replication_coordinator_impl.cpp index 88e9310d141..a16abdbceb5 100644 --- a/src/mongo/db/repl/replication_coordinator_impl.cpp +++ b/src/mongo/db/repl/replication_coordinator_impl.cpp @@ -2795,6 +2795,26 @@ ReplicationCoordinatorImpl::_setCurrentRSConfig_inlock( const ReplicaSetConfig oldConfig = _rsConfig; _rsConfig = newConfig; _protVersion.store(_rsConfig.getProtocolVersion()); + + // Warn if running --nojournal and writeConcernMajorityJournalDefault = false + StorageEngine* storageEngine = getGlobalServiceContext()->getGlobalStorageEngine(); + if (storageEngine && !storageEngine->isDurable() && + (newConfig.getWriteConcernMajorityShouldJournal() && + (!oldConfig.isInitialized() || !oldConfig.getWriteConcernMajorityShouldJournal()))) { + log() << startupWarningsLog; + log() << "** WARNING: This replica set is running without journaling enabled but the " + << startupWarningsLog; + log() << "** writeConcernMajorityJournalDefault option to the replica set config " + << startupWarningsLog; + log() << "** is set to true. The writeConcernMajorityJournalDefault " + << startupWarningsLog; + log() << "** option to the replica set config must be set to false " + << startupWarningsLog; + log() << "** or w:majority write concerns will never complete." + << startupWarningsLog; + log() << startupWarningsLog; + } + log() << "New replica set config in use: " << _rsConfig.toBSON() << rsLog; _selfIndex = myIndex; if (_selfIndex >= 0) { |