summaryrefslogtreecommitdiff
path: root/jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js')
-rw-r--r--jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js30
1 files changed, 24 insertions, 6 deletions
diff --git a/jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js b/jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js
index e63b1d69b59..75699597ffa 100644
--- a/jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js
+++ b/jstests/multiVersion/targetedTestsLastContinuousFeatures/accumulator_fix_last_continuous.js
@@ -33,19 +33,37 @@ load('jstests/multiVersion/libs/multi_cluster.js'); // For upgradeCluster()
st.rs1.getSecondary().getDB(jsTestName())
];
+ function setEngine(db, turnOnSBE) {
+ // Based on which version we are running, set the appropriate parameter which
+ // controls the execution engine.
+ const res = db.adminCommand({
+ getParameter: 1,
+ internalQueryEnableSlotBasedExecutionEngine: 1,
+ internalQueryForceClassicEngine: 1
+ });
+
+ if (res.hasOwnProperty("internalQueryEnableSlotBasedExecutionEngine")) {
+ assert.commandWorked(
+ db.adminCommand(
+ {setParameter: 1, internalQueryEnableSlotBasedExecutionEngine: turnOnSBE}),
+ `at node ${db.getMongo().host}`);
+ } else {
+ assert(res.hasOwnProperty("internalQueryForceClassicEngine"));
+ assert.commandWorked(
+ db.adminCommand({setParameter: 1, internalQueryForceClassicEngine: !turnOnSBE}),
+ `at node ${db.getMongo().host}`);
+ }
+ }
+
// Turns to the classic engine at the shards.
- dbs.forEach((db) => assert.commandWorked(
- db.adminCommand({setParameter: 1, internalQueryForceClassicEngine: false}),
- `at node ${db.getMongo().host}`));
+ dbs.forEach((db) => setEngine(db, false /* turnOnSBE */));
// Verifies that the classic engine's results are same as the expected results.
const classicRes = coll.aggregate(pipeline).toArray();
verifyThis(classicRes);
// Turns to the SBE engine at the shards.
- dbs.forEach((db) => assert.commandWorked(
- db.adminCommand({setParameter: 1, internalQueryForceClassicEngine: true}),
- `at node ${db.getMongo().host}`));
+ dbs.forEach((db) => setEngine(db, true /* turnOnSBE */));
// Verifies that the SBE engine's results are same as the expected results.
const sbeRes = coll.aggregate(pipeline).toArray();