Files
mongo/jstests/sharding/drop_configdb.js

35 lines
961 B
JavaScript

// Test that dropping the config database is completely disabled via
// mongos and via mongod, if started with --configsvr
(function() {
"use strict";
var getConfigsvrToWriteTo = function(st) {
if (st.configRS) {
return st.configRS.getPrimary();
} else {
return st._configServers[0];
}
}
var st = new ShardingTest({ shards : 2 });
var mongos = st.s;
var config = getConfigsvrToWriteTo(st).getDB('config');
// Try to drop config db via configsvr
print ( "1: Try to drop config database via configsvr" )
assert.eq(0, config.dropDatabase().ok);
assert.eq("Cannot drop 'config' database if mongod started with --configsvr",
config.dropDatabase().errmsg);
// Try to drop config db via mongos
var config = mongos.getDB( "config" )
print ( "1: Try to drop config database via mongos" )
assert.eq(0, config.dropDatabase().ok);
// 20 = ErrorCodes::IllegalOperation
assert.eq(20, config.dropDatabase().code);
st.stop();
}());