summaryrefslogtreecommitdiff
path: root/jstests/slow1/sharding_multiple_collections.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/slow1/sharding_multiple_collections.js')
-rw-r--r--jstests/slow1/sharding_multiple_collections.js105
1 files changed, 54 insertions, 51 deletions
diff --git a/jstests/slow1/sharding_multiple_collections.js b/jstests/slow1/sharding_multiple_collections.js
index b844fe6c9dd..46ade14a0ad 100644
--- a/jstests/slow1/sharding_multiple_collections.js
+++ b/jstests/slow1/sharding_multiple_collections.js
@@ -1,61 +1,64 @@
(function() {
-var s = new ShardingTest({ name: "multcollections",
- shards: 2,
- mongos: 1,
- verbose: 1,
- other: { chunkSize: 1, enableBalancer : true } });
-
-s.adminCommand( { enablesharding : "test" } );
-db = s.getDB( "test" );
-s.ensurePrimaryShard('test', 'shard0001');
-
-N = 100000;
-
-S = "";
-while ( S.length < 500 )
- S += "123123312312";
-
-var bulk = db.foo.initializeUnorderedBulkOp();
-var bulk2 = db.bar.initializeUnorderedBulkOp();
-for ( i=0; i<N; i++ ){
- bulk.insert({ _id: i, s: S });
- bulk2.insert({ _id: i, s: S, s2: S });
-}
-assert.writeOK(bulk.execute());
-assert.writeOK(bulk2.execute());
-
-s.printShardingStatus();
-
-function mytest( coll , i , loopNumber ){
- x = coll.find( { _id : i } ).explain();
- if ( x )
- return;
- throw Error( "can't find " + i + " in " + coll.getName() + " on loopNumber: " + loopNumber + " explain: " + tojson( x ) );
-}
-
-loopNumber = 0;
-while ( 1 ){
- for ( i=0; i<N; i++ ){
- mytest( db.foo , i , loopNumber );
- mytest( db.bar , i , loopNumber );
- if ( i % 1000 == 0 )
- print( i );
+ var s = new ShardingTest({
+ name: "multcollections",
+ shards: 2,
+ mongos: 1,
+ verbose: 1,
+ other: {chunkSize: 1, enableBalancer: true}
+ });
+
+ s.adminCommand({enablesharding: "test"});
+ db = s.getDB("test");
+ s.ensurePrimaryShard('test', 'shard0001');
+
+ N = 100000;
+
+ S = "";
+ while (S.length < 500)
+ S += "123123312312";
+
+ var bulk = db.foo.initializeUnorderedBulkOp();
+ var bulk2 = db.bar.initializeUnorderedBulkOp();
+ for (i = 0; i < N; i++) {
+ bulk.insert({_id: i, s: S});
+ bulk2.insert({_id: i, s: S, s2: S});
}
+ assert.writeOK(bulk.execute());
+ assert.writeOK(bulk2.execute());
+
s.printShardingStatus();
- loopNumber++;
- if ( loopNumber == 1 ){
- s.adminCommand( { shardcollection : "test.foo" , key : { _id : 1 } } );
- s.adminCommand( { shardcollection : "test.bar" , key : { _id : 1 } } );
+ function mytest(coll, i, loopNumber) {
+ x = coll.find({_id: i}).explain();
+ if (x)
+ return;
+ throw Error("can't find " + i + " in " + coll.getName() + " on loopNumber: " + loopNumber +
+ " explain: " + tojson(x));
}
-
- assert( loopNumber < 1000 , "taking too long" );
- if ( s.chunkDiff( "foo" ) < 12 && s.chunkDiff( "bar" ) < 12 )
- break;
-}
+ loopNumber = 0;
+ while (1) {
+ for (i = 0; i < N; i++) {
+ mytest(db.foo, i, loopNumber);
+ mytest(db.bar, i, loopNumber);
+ if (i % 1000 == 0)
+ print(i);
+ }
+ s.printShardingStatus();
+ loopNumber++;
+
+ if (loopNumber == 1) {
+ s.adminCommand({shardcollection: "test.foo", key: {_id: 1}});
+ s.adminCommand({shardcollection: "test.bar", key: {_id: 1}});
+ }
+
+ assert(loopNumber < 1000, "taking too long");
+
+ if (s.chunkDiff("foo") < 12 && s.chunkDiff("bar") < 12)
+ break;
+ }
-s.stop();
+ s.stop();
})();