summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
diff options
context:
space:
mode:
authorLouis Williams <louis.williams@mongodb.com>2017-10-10 12:52:19 -0400
committerLouis Williams <louis.williams@mongodb.com>2017-10-16 12:39:30 -0400
commit203ff7c010d1d4fcbe291852f70fb9d967a171cc (patch)
tree2783eb259f18ee18356575e8b7b03ae370c62c28 /src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
parent51386591ed96fc3070bdaa2652974dadebeaccaf (diff)
downloadmongo-203ff7c010d1d4fcbe291852f70fb9d967a171cc.tar.gz
SERVER-30242 SERVER-31513 SERVER-31235 Make method to determine if fCV has been initialized in memory. Make fCV state one atomic variable. Initialize fCV on arbiters once a primary is elected.
Diffstat (limited to 'src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp')
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
index a43c9cb9f49..5df5779ee11 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
@@ -495,8 +495,10 @@ void WiredTigerKVEngine::cleanShutdown() {
closeConfig = "leak_memory=true";
}
- const bool needsDowngrade =
- !_readOnly && !serverGlobalParams.featureCompatibility.isFullyUpgradedTo36();
+ // Only downgrade when the fCV document has been explicitly initialized and is 3.4.
+ const bool needsDowngrade = !_readOnly &&
+ serverGlobalParams.featureCompatibility.isVersionInitialized() &&
+ serverGlobalParams.featureCompatibility.isFullyDowngradedTo34();
invariantWTOK(_conn->close(_conn, closeConfig));
_conn = nullptr;