summaryrefslogtreecommitdiff
path: root/jstests/replsets/rollback_collMod_fatal.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/replsets/rollback_collMod_fatal.js')
-rw-r--r--jstests/replsets/rollback_collMod_fatal.js31
1 files changed, 19 insertions, 12 deletions
diff --git a/jstests/replsets/rollback_collMod_fatal.js b/jstests/replsets/rollback_collMod_fatal.js
index 770165cf88c..c907213f05d 100644
--- a/jstests/replsets/rollback_collMod_fatal.js
+++ b/jstests/replsets/rollback_collMod_fatal.js
@@ -12,12 +12,14 @@ var name = "rollback_collMod_fatal";
var replTest = new ReplSetTest({name: name, nodes: 3});
var nodes = replTest.nodeList();
var conns = replTest.startSet();
-replTest.initiate({"_id": name,
- "members": [
- { "_id": 0, "host": nodes[0], priority: 3 },
- { "_id": 1, "host": nodes[1] },
- { "_id": 2, "host": nodes[2], arbiterOnly: true}]
- });
+replTest.initiate({
+ "_id": name,
+ "members": [
+ {"_id": 0, "host": nodes[0], priority: 3},
+ {"_id": 1, "host": nodes[1]},
+ {"_id": 2, "host": nodes[2], arbiterOnly: true}
+ ]
+});
var a_conn = conns[0];
var b_conn = conns[1];
var AID = replTest.getNodeId(a_conn);
@@ -29,7 +31,10 @@ replTest.waitForState(replTest.nodes[0], ReplSetTest.State.PRIMARY, 60 * 1000);
var master = replTest.getPrimary();
assert(master === conns[0], "conns[0] assumed to be master");
assert(a_conn.host === master.host, "a_conn assumed to be master");
-var options = {writeConcern: {w: 2, wtimeout: 60000}, upsert: true};
+var options = {
+ writeConcern: {w: 2, wtimeout: 60000},
+ upsert: true
+};
a_conn.getDB(name).foo.ensureIndex({x: 1}, {expireAfterSeconds: 3600});
assert.writeOK(a_conn.getDB(name).foo.insert({x: 1}, options));
@@ -39,9 +44,8 @@ replTest.stop(AID);
// do a collMod altering TTL which should cause FATAL when rolled back
master = replTest.getPrimary();
assert(b_conn.host === master.host, "b_conn assumed to be master");
-assert.commandWorked(b_conn.getDB(name).runCommand({collMod: "foo",
- index: {keyPattern: {x:1},
- expireAfterSeconds: 10}}));
+assert.commandWorked(b_conn.getDB(name).runCommand(
+ {collMod: "foo", index: {keyPattern: {x: 1}, expireAfterSeconds: 10}}));
// shut down B and bring back the original master
replTest.stop(BID);
@@ -50,7 +54,10 @@ master = replTest.getPrimary();
assert(a_conn.host === master.host, "a_conn assumed to be master");
// do a write so that B will have to roll back
-options = {writeConcern: {w: 1, wtimeout: 60000}, upsert: true};
+options = {
+ writeConcern: {w: 1, wtimeout: 60000},
+ upsert: true
+};
assert.writeOK(a_conn.getDB(name).foo.insert({x: 2}, options));
// restart B, which should attempt rollback but then fassert
@@ -60,4 +67,4 @@ assert.soon(function() {
return rawMongoProgramOutput().match("cannot rollback a collMod command");
}, "B failed to fassert");
-replTest.stopSet(undefined, undefined, { allowedExitCodes: [ MongoRunner.EXIT_ABRUPT ] });
+replTest.stopSet(undefined, undefined, {allowedExitCodes: [MongoRunner.EXIT_ABRUPT]});