summaryrefslogtreecommitdiff
path: root/jstests/slow1
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/slow1')
-rw-r--r--jstests/slow1/large_set.js59
1 files changed, 59 insertions, 0 deletions
diff --git a/jstests/slow1/large_set.js b/jstests/slow1/large_set.js
new file mode 100644
index 00000000000..afe14788fce
--- /dev/null
+++ b/jstests/slow1/large_set.js
@@ -0,0 +1,59 @@
+(function() {
+ "use strict";
+ var name = "large_set";
+ var replTest = new ReplSetTest({name: name,
+ nodes: 30,
+ oplogSize: 5,
+ nodeOptions: {smallfiles:""} });
+ var host = getHostName();
+
+ var nodes = replTest.startSet();
+ replTest.initiate({_id : name, members : [
+ {_id : 0, host : host+":"+replTest.ports[0]},
+ {_id : 1, host : host+":"+replTest.ports[1]},
+ {_id : 2, host : host+":"+replTest.ports[2]},
+ {_id : 3, host : host+":"+replTest.ports[3]},
+ {_id : 4, host : host+":"+replTest.ports[4]},
+ {_id : 5, host : host+":"+replTest.ports[5], "arbiterOnly": true},
+ {_id : 6, host : host+":"+replTest.ports[6], "arbiterOnly": true},
+ {_id : 7, host : host+":"+replTest.ports[7], "votes": 0},
+ {_id : 8, host : host+":"+replTest.ports[8], "votes": 0},
+ {_id : 9, host : host+":"+replTest.ports[9], "votes": 0},
+ {_id : 10, host : host+":"+replTest.ports[10], "votes": 0},
+ {_id : 11, host : host+":"+replTest.ports[11], "votes": 0},
+ {_id : 12, host : host+":"+replTest.ports[12], "votes": 0},
+ {_id : 13, host : host+":"+replTest.ports[13], "votes": 0},
+ {_id : 14, host : host+":"+replTest.ports[14], "votes": 0},
+ {_id : 15, host : host+":"+replTest.ports[15], "votes": 0},
+ {_id : 16, host : host+":"+replTest.ports[16], "votes": 0},
+ {_id : 17, host : host+":"+replTest.ports[17], "votes": 0},
+ {_id : 18, host : host+":"+replTest.ports[18], "votes": 0},
+ {_id : 19, host : host+":"+replTest.ports[19], "votes": 0},
+ {_id : 20, host : host+":"+replTest.ports[20], "votes": 0},
+ {_id : 21, host : host+":"+replTest.ports[21], "votes": 0},
+ {_id : 22, host : host+":"+replTest.ports[22], "votes": 0},
+ {_id : 23, host : host+":"+replTest.ports[23], "votes": 0},
+ {_id : 24, host : host+":"+replTest.ports[24], "votes": 0},
+ {_id : 25, host : host+":"+replTest.ports[25], "votes": 0},
+ {_id : 26, host : host+":"+replTest.ports[26], "votes": 0},
+ {_id : 27, host : host+":"+replTest.ports[27], "votes": 0},
+ {_id : 28, host : host+":"+replTest.ports[28], "votes": 0},
+ {_id : 29, host : host+":"+replTest.ports[29], "votes": 0}
+ ]});
+
+ replTest.awaitSecondaryNodes();
+ replTest.awaitReplication();
+
+ var master = replTest.getMaster();
+ assert.writeOK(master.getDB("test").foo.save({ a: "test" },
+ { writeConcern: { w: 'majority' }}));
+
+ replTest.stop(2);
+ replTest.stop(3);
+ replTest.stop(4);
+ jsTest.log("3 voting nodes taken down; attempting impossible, majority writeConcern write");
+ assert.writeError(master.getDB("test").foo.save({ a: "test" },
+ { writeConcern: { w: 'majority',
+ wtimeout: 10*1000 }}));
+ replTest.stopSet();
+}());