Files
mongo/jstests/sharding/noUpdateButN1inAnotherCollection.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.5 KiB
JavaScript

function debug( str ) {
print( "---\n" + str + "\n-----" );
}
var name = "badNonUpdate";
debug("Starting sharded cluster test stuff");
var s = new ShardingTest({ name: name, shards: 2, mongos : 2 });
var mongosA=s.s0;
var mongosB=s.s1;
ns = "test.coll";
ns2 = "test.coll2";
adminSA = mongosA.getDB( "admin" );
adminSA.runCommand({ enableSharding : "test"});
adminSA.runCommand( { moveprimary : "test", to : "shard0000" } );
adminSA.runCommand( { moveprimary : "test2", to : "shard0001" } );
adminSA.runCommand({ shardCollection : ns, key : { _id : 1 } });
try {
s.stopBalancer();
} catch (e) {
print("coundn't stop balancer via command");
}
adminSA.settings.update({ _id: 'balancer' }, { $set: { stopped: true }});
var db = mongosA.getDB( "test" );
var coll = db.coll;
var coll2 = db.coll2;
numDocs = 10;
for (var i = 1; i < numDocs; i++) {
coll.insert({_id:i, control:0});
coll2.insert({_id:i, control:0});
}
debug("Inserted docs, now split chunks");
adminSA.runCommand( { split: ns, find : { _id : 3} });
adminSA.runCommand( { movechunk: ns, find : { _id : 10}, to: "shard0001" });
var command = 'printjson(db.coll.update({ _id: 9 }, { $set: { a: "9" }}, true));';
// without this first query through mongo, the second time doesn't "fail"
debug("Try query first time");
runMongoProgram( "mongo", "--quiet", "--port", "" + s._mongos[1].port, "--eval", command );
var res = mongosB.getDB("test").coll2.update({ _id: 0 }, { $set: { c: "333" }});
assert.eq( 0, res.nModified );
s.stop();