Files
mongo/jstests/sharding/sharding_multiple_ns_rs.js
Kaloian Manassiev 706ac90265 SERVER-21186 Make all sharding tests use default verbosity of 1
The default ShardingTest verbosity is currently zero, but we have many
tests, which bump it to 1 and even higher.

Since verbosity level of 0 is sometimes insufficient for investigating
transient failures, this change makes the default to be 1 and removes all
places, which explicitly make it 1 or higher.
2015-11-11 11:01:18 -05:00

58 lines
1.7 KiB
JavaScript

(function() {
var s = new ShardingTest({ name: "Sharding multiple ns",
shards: 1,
mongos: 1,
other: { rs : true , chunkSize: 1 } });
s.adminCommand( { enablesharding : "test" } );
s.adminCommand( { shardcollection : "test.foo" , key : { _id : 1 } } );
db = s.getDB( "test" );
var bulk = db.foo.initializeUnorderedBulkOp();
var bulk2 = db.bar.initializeUnorderedBulkOp();
for ( i=0; i<100; i++ ) {
bulk.insert({ _id: i, x: i });
bulk2.insert({ _id: i, x: i });
}
assert.writeOK(bulk.execute());
assert.writeOK(bulk2.execute());
sh.splitAt( "test.foo" , { _id : 50 } )
other = new Mongo( s.s.name );
dbother = other.getDB( "test" );
assert.eq( 5 , db.foo.findOne( { _id : 5 } ).x );
assert.eq( 5 , dbother.foo.findOne( { _id : 5 } ).x );
assert.eq( 5 , db.bar.findOne( { _id : 5 } ).x );
assert.eq( 5 , dbother.bar.findOne( { _id : 5 } ).x );
s._rs[0].test.awaitReplication();
s._rs[0].test.stopMaster(15);
// Wait for the primary to come back online...
var primary = s._rs[0].test.getPrimary();
// Wait for the mongos to recognize the new primary...
ReplSetTest.awaitRSClientHosts( db.getMongo(), primary, { ismaster : true } );
assert.eq( 5 , db.foo.findOne( { _id : 5 } ).x );
assert.eq( 5 , db.bar.findOne( { _id : 5 } ).x );
s.adminCommand( { shardcollection : "test.bar" , key : { _id : 1 } } );
sh.splitAt( "test.bar" , { _id : 50 } )
yetagain = new Mongo( s.s.name )
assert.eq( 5 , yetagain.getDB( "test" ).bar.findOne( { _id : 5 } ).x )
assert.eq( 5 , yetagain.getDB( "test" ).foo.findOne( { _id : 5 } ).x )
assert.eq( 5 , dbother.bar.findOne( { _id : 5 } ).x );
assert.eq( 5 , dbother.foo.findOne( { _id : 5 } ).x );
s.stop();
})();