summaryrefslogtreecommitdiff
path: root/jstests/noPassthrough/query_yield1.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/noPassthrough/query_yield1.js')
-rw-r--r--jstests/noPassthrough/query_yield1.js134
1 files changed, 68 insertions, 66 deletions
diff --git a/jstests/noPassthrough/query_yield1.js b/jstests/noPassthrough/query_yield1.js
index 50b7d4bf60d..22e95a1fb32 100644
--- a/jstests/noPassthrough/query_yield1.js
+++ b/jstests/noPassthrough/query_yield1.js
@@ -1,89 +1,91 @@
-if (0) { // Test disabled until SERVER-8579 is finished. Reminder ticket: SERVER-8342
+if (0) { // Test disabled until SERVER-8579 is finished. Reminder ticket: SERVER-8342
-load( "jstests/libs/slow_weekly_util.js" );
-testServer = new SlowWeeklyMongod( "query_yield1" );
-db = testServer.getDB( "test" );
+ load("jstests/libs/slow_weekly_util.js");
+ testServer = new SlowWeeklyMongod("query_yield1");
+ db = testServer.getDB("test");
-t = db.query_yield1;
-t.drop();
+ t = db.query_yield1;
+ t.drop();
-N = 20000;
-i = 0;
+ N = 20000;
+ i = 0;
-q = function(){ var x=this.n; for ( var i=0; i<250; i++ ){ x = x * 2; } return false; };
-
-while ( true ){
- function fill(){
- var bulk = t.initializeUnorderedBulkOp();
- for ( ; i<N; i++ ){
- bulk.insert({ _id: i, n: 1 });
+ q = function() {
+ var x = this.n;
+ for (var i = 0; i < 250; i++) {
+ x = x * 2;
}
- assert.writeOK(bulk.execute());
- }
-
- function timeQuery(){
- return Date.timeFunc(
- function(){
- assert.eq( 0 , t.find( q ).itcount() );
+ return false;
+ };
+
+ while (true) {
+ function fill() {
+ var bulk = t.initializeUnorderedBulkOp();
+ for (; i < N; i++) {
+ bulk.insert({_id: i, n: 1});
}
- );
-
+ assert.writeOK(bulk.execute());
+ }
+
+ function timeQuery() {
+ return Date.timeFunc(function() {
+ assert.eq(0, t.find(q).itcount());
+ });
+ }
+
+ fill();
+ timeQuery();
+ timeQuery();
+ time = timeQuery();
+ print(N + "\t" + time);
+ if (time > 2000)
+ break;
+
+ N *= 2;
}
-
- fill();
- timeQuery();
- timeQuery();
- time = timeQuery();
- print( N + "\t" + time );
- if ( time > 2000 )
- break;
-
- N *= 2;
-}
-// --- test 1
+ // --- test 1
-assert.eq( 0, db.currentOp().inprog.length , "setup broken" );
+ assert.eq(0, db.currentOp().inprog.length, "setup broken");
-join = startParallelShell( "print( 0 == db.query_yield1.find( function(){ var x=this.n; for ( var i=0; i<500; i++ ){ x = x * 2; } return false; } ).itcount() ); " );
+ join = startParallelShell(
+ "print( 0 == db.query_yield1.find( function(){ var x=this.n; for ( var i=0; i<500; i++ ){ x = x * 2; } return false; } ).itcount() ); ");
-assert.soon(
- function(){
+ assert.soon(function() {
var x = db.currentOp().inprog;
return x.length > 0;
- } , "never doing query" , 2000 , 1
-);
+ }, "never doing query", 2000, 1);
-print( "start query" );
+ print("start query");
-num = 0;
-start = new Date();
-biggestMe = 0;
-while ( ( (new Date()).getTime() - start ) < ( time * 2 ) ){
- var me = Date.timeFunc( function(){ t.insert( { x : 1 } ); });
- var x = db.currentOp();
+ num = 0;
+ start = new Date();
+ biggestMe = 0;
+ while (((new Date()).getTime() - start) < (time * 2)) {
+ var me = Date.timeFunc(function() {
+ t.insert({x: 1});
+ });
+ var x = db.currentOp();
- if ( num++ == 0 ){
- assert.eq( 1 , x.inprog.length , "nothing in prog" );
- }
-
- if ( me > biggestMe ) {
- biggestMe = me;
- print( "biggestMe: " + biggestMe );
- }
-
- assert.gt( 200 , me , "took too long for me to run" );
+ if (num++ == 0) {
+ assert.eq(1, x.inprog.length, "nothing in prog");
+ }
- if ( x.inprog.length == 0 )
- break;
+ if (me > biggestMe) {
+ biggestMe = me;
+ print("biggestMe: " + biggestMe);
+ }
-}
+ assert.gt(200, me, "took too long for me to run");
-join();
+ if (x.inprog.length == 0)
+ break;
+ }
-var x = db.currentOp();
-assert.eq( 0 , x.inprog.length , "weird 2" );
+ join();
-testServer.stop();
+ var x = db.currentOp();
+ assert.eq(0, x.inprog.length, "weird 2");
+ testServer.stop();
}