diff options
Diffstat (limited to 'jstests/core/query/explain/explain1.js')
-rw-r--r-- | jstests/core/query/explain/explain1.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/jstests/core/query/explain/explain1.js b/jstests/core/query/explain/explain1.js new file mode 100644 index 00000000000..2de3e2f89d2 --- /dev/null +++ b/jstests/core/query/explain/explain1.js @@ -0,0 +1,29 @@ +// @tags: [ +// assumes_read_concern_local, +// ] + +t = db.explain1; +t.drop(); + +for (var i = 0; i < 100; i++) { + t.save({x: i}); +} + +q = { + x: {$gt: 50} +}; + +assert.eq(49, t.find(q).count(), "A"); +assert.eq(49, t.find(q).itcount(), "B"); +assert.eq(20, t.find(q).limit(20).itcount(), "C"); + +t.createIndex({x: 1}); + +assert.eq(49, t.find(q).count(), "D"); +assert.eq(49, t.find(q).itcount(), "E"); +assert.eq(20, t.find(q).limit(20).itcount(), "F"); + +assert.eq(49, t.find(q).explain("executionStats").executionStats.nReturned, "G"); +assert.eq(20, t.find(q).limit(20).explain("executionStats").executionStats.nReturned, "H"); +assert.eq(20, t.find(q).limit(-20).explain("executionStats").executionStats.nReturned, "I"); +assert.eq(49, t.find(q).batchSize(20).explain("executionStats").executionStats.nReturned, "J"); |