summaryrefslogtreecommitdiff
path: root/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js')
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js b/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
index e5888c67565..cc64ea70301 100644
--- a/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
+++ b/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
@@ -153,6 +153,14 @@ let standaloneTest = function(nodeOptions, downgradeVersion) {
checkUniqueIndexFormatVersion(adminDB);
setFCV(adminDB, downgradeFCV);
+ } else {
+ checkFCV(adminDB, lastLTSFCV);
+
+ // Transitioning from last-lts to last-continuous is only allowed when
+ // setFeatureCompatibilityVersion is called with fromConfigServer: true.
+ assert.commandWorked(adminDB.runCommand(
+ {setFeatureCompatibilityVersion: downgradeFCV, fromConfigServer: true}));
+ checkFCV(adminDB, downgradeFCV);
}
// Ensure featureCompatibilityVersion is downgraded and all collections still have UUIDs.
@@ -243,6 +251,14 @@ let replicaSetTest = function(nodeOptions, downgradeVersion) {
// Change featureCompatibilityVersion to downgradeFCV.
setFCV(primaryAdminDB, downgradeFCV);
rst.awaitReplication();
+ } else {
+ checkFCV(primaryAdminDB, lastLTSFCV);
+
+ // Transitioning from last-lts to last-continuous is only allowed when
+ // setFeatureCompatibilityVersion is called with fromConfigServer: true.
+ assert.commandWorked(primaryAdminDB.runCommand(
+ {setFeatureCompatibilityVersion: downgradeFCV, fromConfigServer: true}));
+ checkFCV(primaryAdminDB, downgradeFCV);
}
// Ensure featureCompatibilityVersion is 'downgradeVersion' and all collections still have