summaryrefslogtreecommitdiff
path: root/jstests/replsets/replsetfreeze.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/replsets/replsetfreeze.js')
-rw-r--r--jstests/replsets/replsetfreeze.js79
1 files changed, 36 insertions, 43 deletions
diff --git a/jstests/replsets/replsetfreeze.js b/jstests/replsets/replsetfreeze.js
index 3467f4bd98f..2629a78fe15 100644
--- a/jstests/replsets/replsetfreeze.js
+++ b/jstests/replsets/replsetfreeze.js
@@ -10,13 +10,12 @@
* 9: check we get a new master within 30 seconds
*/
-
var w = 0;
var wait = function(f) {
w++;
var n = 0;
while (!f()) {
- if( n % 4 == 0 )
+ if (n % 4 == 0)
print("toostale.js waiting " + w);
if (++n == 4) {
print("" + f);
@@ -27,26 +26,29 @@ var wait = function(f) {
};
var reconnect = function(a) {
- wait(function() {
- try {
- a.getDB("foo").bar.stats();
- return true;
- } catch(e) {
- print(e);
- return false;
- }
+ wait(function() {
+ try {
+ a.getDB("foo").bar.stats();
+ return true;
+ } catch (e) {
+ print(e);
+ return false;
+ }
});
};
-
print("1: initialize set");
-var replTest = new ReplSetTest( {name: 'unicomplex', nodes: 3} );
+var replTest = new ReplSetTest({name: 'unicomplex', nodes: 3});
var nodes = replTest.nodeList();
var conns = replTest.startSet();
-var config = {"_id" : "unicomplex", "members" : [
- {"_id" : 0, "host" : nodes[0] },
- {"_id" : 1, "host" : nodes[1] },
- {"_id" : 2, "host" : nodes[2], "arbiterOnly" : true}]};
+var config = {
+ "_id": "unicomplex",
+ "members": [
+ {"_id": 0, "host": nodes[0]},
+ {"_id": 1, "host": nodes[1]},
+ {"_id": 2, "host": nodes[2], "arbiterOnly": true}
+ ]
+};
var r = replTest.initiate(config);
var master = replTest.getPrimary();
var secondary = replTest.getSecondary();
@@ -55,55 +57,46 @@ replTest.awaitSecondaryNodes();
print("2: step down m1");
try {
- master.getDB("admin").runCommand({replSetStepDown : 1, force : 1});
-}
-catch(e) {
- print(e);
+ master.getDB("admin").runCommand({replSetStepDown: 1, force: 1});
+} catch (e) {
+ print(e);
}
reconnect(master);
-printjson( master.getDB("admin").runCommand({replSetGetStatus: 1}) );
+printjson(master.getDB("admin").runCommand({replSetGetStatus: 1}));
print("3: freeze set for 30 seconds");
var start = (new Date()).getTime();
-assert.commandWorked(secondary.getDB("admin").runCommand({replSetFreeze : 30}));
-assert.commandWorked(master.getDB("admin").runCommand({replSetFreeze : 30}));
-
+assert.commandWorked(secondary.getDB("admin").runCommand({replSetFreeze: 30}));
+assert.commandWorked(master.getDB("admin").runCommand({replSetFreeze: 30}));
print("4: check no one is master for 30 seconds");
-while ((new Date()).getTime() - start < (28 * 1000) ) { // we need less 30 since it takes some time to return... hacky
- var result = master.getDB("admin").runCommand({isMaster:1});
- assert.eq(result.ismaster, false);
- assert.eq(result.primary, undefined);
- sleep(1000);
+while ((new Date()).getTime() - start <
+ (28 * 1000)) { // we need less 30 since it takes some time to return... hacky
+ var result = master.getDB("admin").runCommand({isMaster: 1});
+ assert.eq(result.ismaster, false);
+ assert.eq(result.primary, undefined);
+ sleep(1000);
}
-
print("5: check for new master");
master = replTest.getPrimary();
-
print("6: step down new master");
try {
- master.getDB("admin").runCommand({replSetStepDown : 1, force : 1});
-}
-catch(e) {
- print(e);
+ master.getDB("admin").runCommand({replSetStepDown: 1, force: 1});
+} catch (e) {
+ print(e);
}
reconnect(master);
-
print("7: freeze for 30 seconds");
-master.getDB("admin").runCommand({replSetFreeze : 30});
+master.getDB("admin").runCommand({replSetFreeze: 30});
sleep(1000);
-
print("8: unfreeze");
-master.getDB("admin").runCommand({replSetFreeze : 0});
-
+master.getDB("admin").runCommand({replSetFreeze: 0});
print("9: check we get a new master within 30 seconds");
master = replTest.getPrimary();
-
-replTest.stopSet( 15 );
-
+replTest.stopSet(15);