summaryrefslogtreecommitdiff
path: root/jstests/parallel/del.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/parallel/del.js')
-rw-r--r--jstests/parallel/del.js37
1 files changed, 18 insertions, 19 deletions
diff --git a/jstests/parallel/del.js b/jstests/parallel/del.js
index c6eb5002724..fd4a3f13fe1 100644
--- a/jstests/parallel/del.js
+++ b/jstests/parallel/del.js
@@ -1,19 +1,20 @@
-
N = 1000;
-
HOST = db.getMongo().host
-DONE = false;
+a = db.getSisterDB( "fooa" )
+b = db.getSisterDB( "foob" )
+a.dropDatabase();
+b.dropDatabase();
-function del1( dbname ){
- var m = new Mongo( HOST )
+function del1( dbname, host, max ){
+ var m = new Mongo( host )
var db = m.getDB( "foo" + dbname );
var t = db.del
- while ( ! DONE ){
+ while ( !db.del_parallel.count() ){
var r = Math.random();
- var n = Math.floor( Math.random() * N );
+ var n = Math.floor( Math.random() * max );
if ( r < .9 ){
t.insert( { x : n } )
}
@@ -31,14 +32,14 @@ function del1( dbname ){
}
}
-function del2( dbname ){
- var m = new Mongo( HOST )
+function del2( dbname, host, max ){
+ var m = new Mongo( host )
var db = m.getDB( "foo" + dbname );
var t = db.del
- while ( ! DONE ){
+ while ( !db.del_parallel.count() ){
var r = Math.random();
- var n = Math.floor( Math.random() * N );
+ var n = Math.floor( Math.random() * max );
var s = Math.random() > .5 ? 1 : -1;
if ( r < .5 ){
@@ -55,17 +56,14 @@ function del2( dbname ){
all = []
-all.push( fork( del1 , "a" ) )
-all.push( fork( del2 , "a" ) )
-all.push( fork( del1 , "b" ) )
-all.push( fork( del2 , "b" ) )
+all.push( fork( del1 , "a", HOST, N ) )
+all.push( fork( del2 , "a", HOST, N ) )
+all.push( fork( del1 , "b", HOST, N ) )
+all.push( fork( del2 , "b", HOST, N ) )
for ( i=0; i<all.length; i++ )
all[i].start()
-a = db.getSisterDB( "fooa" )
-b = db.getSisterDB( "foob" )
-
for ( i=0; i<10; i++ ){
sleep( 2000 )
print( "dropping" )
@@ -73,7 +71,8 @@ for ( i=0; i<10; i++ ){
b.dropDatabase();
}
-DONE = true;
+a.del_parallel.save({done: 1})
+b.del_parallel.save({done: 1})
all[0].join()