summaryrefslogtreecommitdiff
path: root/jstests/multiVersion/libs/multi_rs.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/multiVersion/libs/multi_rs.js')
-rw-r--r--jstests/multiVersion/libs/multi_rs.js19
1 files changed, 13 insertions, 6 deletions
diff --git a/jstests/multiVersion/libs/multi_rs.js b/jstests/multiVersion/libs/multi_rs.js
index ce67a5ed157..1529353aca5 100644
--- a/jstests/multiVersion/libs/multi_rs.js
+++ b/jstests/multiVersion/libs/multi_rs.js
@@ -10,14 +10,14 @@
ReplSetTest.prototype.upgradeSet = function(options, user, pwd) {
let primary = this.getPrimary();
- // Upgrade secondaries first.
this.upgradeSecondaries(primary, options, user, pwd);
+ this.upgradeArbiters(primary, options, user, pwd);
- // Then upgrade the primary after stepping down.
+ // Upgrade the primary after stepping down.
this.upgradePrimary(primary, options, user, pwd);
};
-ReplSetTest.prototype.upgradeSecondaries = function(primary, options, user, pwd) {
+ReplSetTest.prototype.upgradeMembers = function(primary, members, options, user, pwd) {
const noDowntimePossible = this.nodes.length > 2;
// Merge new options into node settings.
@@ -25,14 +25,22 @@ ReplSetTest.prototype.upgradeSecondaries = function(primary, options, user, pwd)
this.nodeOptions[nodeName] = Object.merge(this.nodeOptions[nodeName], options);
}
- for (let secondary of this.getSecondaries()) {
- this.upgradeNode(secondary, options, user, pwd);
+ for (let member of members) {
+ this.upgradeNode(member, options, user, pwd);
if (noDowntimePossible)
assert.eq(this.getPrimary(), primary);
}
};
+ReplSetTest.prototype.upgradeSecondaries = function(primary, options, user, pwd) {
+ this.upgradeMembers(primary, this.getSecondaries(), options, user, pwd);
+};
+
+ReplSetTest.prototype.upgradeArbiters = function(primary, options, user, pwd) {
+ this.upgradeMembers(primary, this.getArbiters(), options, user, pwd);
+};
+
ReplSetTest.prototype.upgradePrimary = function(primary, options, user, pwd) {
const noDowntimePossible = this.nodes.length > 2;
@@ -122,7 +130,6 @@ ReplSetTest.prototype.stepdown = function(nodeId) {
ReplSetTest.prototype.reconnect = function(node) {
var nodeId = this.getNodeId(node);
this.nodes[nodeId] = new Mongo(node.host);
- var except = {};
for (var i in node) {
if (typeof (node[i]) == "function")
continue;