diff options
Diffstat (limited to 'jstests/sharding/server_status.js')
-rw-r--r-- | jstests/sharding/server_status.js | 87 |
1 files changed, 43 insertions, 44 deletions
diff --git a/jstests/sharding/server_status.js b/jstests/sharding/server_status.js index 094cb3ca433..b8e59b22275 100644 --- a/jstests/sharding/server_status.js +++ b/jstests/sharding/server_status.js @@ -4,48 +4,47 @@ */ (function() { -"use strict"; - -var st = new ShardingTest({ shards: 1 }); - -var testDB = st.s.getDB('test'); -testDB.adminCommand({ enableSharding: 'test' }); -testDB.adminCommand({ shardCollection: 'test.user', key: { _id: 1 }}); - -// Initialize shard metadata in shards -testDB.user.insert({ x: 1 }); - -var checkShardingServerStatus = function(doc, isCSRS) { - var shardingSection = doc.sharding; - assert.neq(shardingSection, null); - - var configConnStr = shardingSection.configsvrConnectionString; - var configConn = new Mongo(configConnStr); - var configIsMaster = configConn.getDB('admin').runCommand({ isMaster: 1 }); - - var configOpTimeObj = shardingSection.lastSeenConfigServerOpTime; - - if (isCSRS) { - assert.gt(configConnStr.indexOf('/'), 0); - assert.eq(1, configIsMaster.configsvr); // If it's a shard, this field won't exist. - assert.neq(null, configOpTimeObj); - assert.neq(null, configOpTimeObj.ts); - assert.neq(null, configOpTimeObj.t); - } - else { - assert.eq(-1, configConnStr.indexOf('/')); - assert.gt(configConnStr.indexOf(','), 0); - assert.eq(0, configIsMaster.configsvr); - assert.eq(null, configOpTimeObj); - } -}; - -var mongosServerStatus = testDB.adminCommand({ serverStatus: 1 }); -var isCSRS = st.configRS != null; -checkShardingServerStatus(mongosServerStatus, isCSRS); - -var mongodServerStatus = st.d0.getDB('admin').runCommand({ serverStatus: 1 }); -checkShardingServerStatus(mongodServerStatus, isCSRS); - -st.stop(); + "use strict"; + + var st = new ShardingTest({shards: 1}); + + var testDB = st.s.getDB('test'); + testDB.adminCommand({enableSharding: 'test'}); + testDB.adminCommand({shardCollection: 'test.user', key: {_id: 1}}); + + // Initialize shard metadata in shards + testDB.user.insert({x: 1}); + + var checkShardingServerStatus = function(doc, isCSRS) { + var shardingSection = doc.sharding; + assert.neq(shardingSection, null); + + var configConnStr = shardingSection.configsvrConnectionString; + var configConn = new Mongo(configConnStr); + var configIsMaster = configConn.getDB('admin').runCommand({isMaster: 1}); + + var configOpTimeObj = shardingSection.lastSeenConfigServerOpTime; + + if (isCSRS) { + assert.gt(configConnStr.indexOf('/'), 0); + assert.eq(1, configIsMaster.configsvr); // If it's a shard, this field won't exist. + assert.neq(null, configOpTimeObj); + assert.neq(null, configOpTimeObj.ts); + assert.neq(null, configOpTimeObj.t); + } else { + assert.eq(-1, configConnStr.indexOf('/')); + assert.gt(configConnStr.indexOf(','), 0); + assert.eq(0, configIsMaster.configsvr); + assert.eq(null, configOpTimeObj); + } + }; + + var mongosServerStatus = testDB.adminCommand({serverStatus: 1}); + var isCSRS = st.configRS != null; + checkShardingServerStatus(mongosServerStatus, isCSRS); + + var mongodServerStatus = st.d0.getDB('admin').runCommand({serverStatus: 1}); + checkShardingServerStatus(mongodServerStatus, isCSRS); + + st.stop(); })(); |