diff options
author | David Storch <david.storch@10gen.com> | 2015-05-07 12:19:29 -0400 |
---|---|---|
committer | David Storch <david.storch@10gen.com> | 2015-05-08 10:04:51 -0400 |
commit | df7e94f086f23a4ee9a10679ce7c6cf2ecbb2720 (patch) | |
tree | 724474d2a2bf809c3a3ec65fa06957c5c0664a05 /jstests/core/index_check6.js | |
parent | cddb4b8f5a193e32d1400963cd177fe47c8570df (diff) | |
download | mongo-df7e94f086f23a4ee9a10679ce7c6cf2ecbb2720.tar.gz |
SERVER-16381 last key examined by IXSCAN stage should also count towards keysExamined
Diffstat (limited to 'jstests/core/index_check6.js')
-rw-r--r-- | jstests/core/index_check6.js | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/jstests/core/index_check6.js b/jstests/core/index_check6.js index b1b624adbf6..a3b0e51ded2 100644 --- a/jstests/core/index_check6.js +++ b/jstests/core/index_check6.js @@ -17,16 +17,16 @@ for ( var age=10; age<50; age++ ){ assert.eq( 10 , keysExamined( { age : 30 }, {} ) , "A" ); assert.eq( 20 , keysExamined( { age : { $gte : 29 , $lte : 30 } }, {} ) , "B" ); -assert.eq( 18 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [0,9] } }, +assert.eq( 19 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [0,9] } }, {age:1,rating:1} ) , "C1" ); -assert.eq( 23 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [0,8] } }, +assert.eq( 24 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [0,8] } }, {age:1,rating:1} ) , "C2" ); -assert.eq( 28 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [1,8] } }, +assert.eq( 29 , keysExamined( { age : { $gte : 25 , $lte : 30 }, rating: {$in: [1,8] } }, {age:1,rating:1} ) , "C3" ); -assert.eq( 4 , keysExamined( { age : { $gte : 29 , $lte : 30 } , rating : 5 }, +assert.eq( 5 , keysExamined( { age : { $gte : 29 , $lte : 30 } , rating : 5 }, {age:1,rating:1} ) , "C" ); // SERVER-371 -assert.eq( 6 , keysExamined( { age : { $gte : 29 , $lte : 30 } , rating : { $gte : 4 , $lte : 5 } }, +assert.eq( 7 , keysExamined( { age : { $gte : 29 , $lte : 30 } , rating : { $gte : 4 , $lte : 5 } }, {age:1,rating:1} ) , "D" ); // SERVER-371 assert.eq.automsg( "2", "t.find( { age:30, rating:{ $gte:4, $lte:5} } )" + @@ -57,28 +57,28 @@ function doTest( sort, index ) { doQuery( 3, { a:5, b:5, c:{$gte:5,$lte:7} }, sort, index ); doQuery( 4, { a:5, b:{$gte:5,$lte:6}, c:5 }, sort, index ); if ( sort.b > 0 ) { - doQuery( 2, { a:5, b:{$gte:5.5,$lte:6}, c:5 }, sort, index ); - doQuery( 2, { a:5, b:{$gte:5,$lte:5.5}, c:5 }, sort, index ); + doQuery( 3, { a:5, b:{$gte:5.5,$lte:6}, c:5 }, sort, index ); + doQuery( 3, { a:5, b:{$gte:5,$lte:5.5}, c:5 }, sort, index ); } else { - doQuery( 2, { a:5, b:{$gte:5.5,$lte:6}, c:5 }, sort, index ); - doQuery( 2, { a:5, b:{$gte:5,$lte:5.5}, c:5 }, sort, index ); + doQuery( 3, { a:5, b:{$gte:5.5,$lte:6}, c:5 }, sort, index ); + doQuery( 3, { a:5, b:{$gte:5,$lte:5.5}, c:5 }, sort, index ); } - doQuery( 7, { a:5, b:{$gte:5,$lte:7}, c:5 }, sort, index ); - doQuery( 4, { a:{$gte:5,$lte:6}, b:5, c:5 }, sort, index ); + doQuery( 8, { a:5, b:{$gte:5,$lte:7}, c:5 }, sort, index ); + doQuery( 5, { a:{$gte:5,$lte:6}, b:5, c:5 }, sort, index ); if ( sort.a > 0 ) { - doQuery( 2, { a:{$gte:5.5,$lte:6}, b:5, c:5 }, sort, index ); - doQuery( 2, { a:{$gte:5,$lte:5.5}, b:5, c:5 }, sort, index ); - doQuery( 3, { a:{$gte:5.5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); + doQuery( 3, { a:{$gte:5.5,$lte:6}, b:5, c:5 }, sort, index ); + doQuery( 3, { a:{$gte:5,$lte:5.5}, b:5, c:5 }, sort, index ); + doQuery( 3, { a:{$gte:5.5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); } else { - doQuery( 2, { a:{$gte:5.5,$lte:6}, b:5, c:5 }, sort, index ); - doQuery( 2, { a:{$gte:5,$lte:5.5}, b:5, c:5 }, sort, index ); - doQuery( 3, { a:{$gte:5.5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); + doQuery( 3, { a:{$gte:5.5,$lte:6}, b:5, c:5 }, sort, index ); + doQuery( 3, { a:{$gte:5,$lte:5.5}, b:5, c:5 }, sort, index ); + doQuery( 4, { a:{$gte:5.5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); } - doQuery( 7, { a:{$gte:5,$lte:7}, b:5, c:5 }, sort, index ); - doQuery( 6, { a:{$gte:5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); - doQuery( 6, { a:5, b:{$gte:5,$lte:6}, c:{$gte:5,$lte:6} }, sort, index ); - doQuery( 10, { a:{$gte:5,$lte:6}, b:{$gte:5,$lte:6}, c:5 }, sort, index ); - doQuery( 14, { a:{$gte:5,$lte:6}, b:{$gte:5,$lte:6}, c:{$gte:5,$lte:6} }, sort, index ); + doQuery( 8, { a:{$gte:5,$lte:7}, b:5, c:5 }, sort, index ); + doQuery( 7, { a:{$gte:5,$lte:6}, b:5, c:{$gte:5,$lte:6} }, sort, index ); + doQuery( 7, { a:5, b:{$gte:5,$lte:6}, c:{$gte:5,$lte:6} }, sort, index ); + doQuery( 11, { a:{$gte:5,$lte:6}, b:{$gte:5,$lte:6}, c:5 }, sort, index ); + doQuery( 15, { a:{$gte:5,$lte:6}, b:{$gte:5,$lte:6}, c:{$gte:5,$lte:6} }, sort, index ); } for ( var a = -1; a <= 1; a += 2 ) { |