summaryrefslogtreecommitdiff
path: root/jstests/core/covered_index_sort_3.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/covered_index_sort_3.js')
-rw-r--r--jstests/core/covered_index_sort_3.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/jstests/core/covered_index_sort_3.js b/jstests/core/covered_index_sort_3.js
new file mode 100644
index 00000000000..8f5986c4d76
--- /dev/null
+++ b/jstests/core/covered_index_sort_3.js
@@ -0,0 +1,16 @@
+// Compound index covered query tests with sort
+
+var coll = db.getCollection("covered_sort_3")
+coll.drop()
+for (i=0;i<100;i++) {
+ coll.insert({a:i, b:"strvar_"+(i%13), c:NumberInt(i%10)})
+}
+coll.insert
+coll.ensureIndex({a:1,b:-1,c:1})
+
+// Test no query, sort on all fields in index order
+var plan = coll.find({}, {b:1, c:1, _id:0}).sort({a:1,b:-1,c:1}).hint({a:1, b:-1, c:1}).explain()
+assert.eq(true, plan.indexOnly, "compound.1.1 - indexOnly should be true on covered query")
+assert.eq(0, plan.nscannedObjects, "compound.1.1 - nscannedObjects should be 0 for covered query")
+
+print ('all tests pass')