summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/replication_coordinator_impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/replication_coordinator_impl.cpp')
-rw-r--r--src/mongo/db/repl/replication_coordinator_impl.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_impl.cpp b/src/mongo/db/repl/replication_coordinator_impl.cpp
index 5d8fee72e3e..9ffbed75ae3 100644
--- a/src/mongo/db/repl/replication_coordinator_impl.cpp
+++ b/src/mongo/db/repl/replication_coordinator_impl.cpp
@@ -2795,6 +2795,24 @@ ReplicationCoordinatorImpl::_setCurrentRSConfig_inlock(OperationContext* opCtx,
log() << "** in a future version." << startupWarningsLog;
}
+ // Warn if running --nojournal and writeConcernMajorityJournalDefault = false
+ StorageEngine* storageEngine = opCtx->getServiceContext()->getGlobalStorageEngine();
+ if (!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;