summaryrefslogtreecommitdiff
path: root/jstests/core/index_partial_create_drop.js
diff options
context:
space:
mode:
authorJason Rassi <rassi@10gen.com>2015-06-23 15:23:53 -0400
committerJason Rassi <rassi@10gen.com>2015-06-23 18:36:56 -0400
commit0cb336b96289cf5daf7c748902a1fd88d90ec9ba (patch)
tree6e664c9fb5f26d8fbadd12f962af2a0c7325142c /jstests/core/index_partial_create_drop.js
parent31403b950cca6b1243c8b6122c0a50b5ad957eda (diff)
downloadmongo-0cb336b96289cf5daf7c748902a1fd88d90ec9ba.tar.gz
SERVER-18180 Partial index jstests: style, explain() instead of hint()
Diffstat (limited to 'jstests/core/index_partial_create_drop.js')
-rw-r--r--jstests/core/index_partial_create_drop.js22
1 files changed, 11 insertions, 11 deletions
diff --git a/jstests/core/index_partial_create_drop.js b/jstests/core/index_partial_create_drop.js
index 4f9f9c514eb..d997f0fcfa3 100644
--- a/jstests/core/index_partial_create_drop.js
+++ b/jstests/core/index_partial_create_drop.js
@@ -5,7 +5,7 @@
var isMongos = (db.runCommand("isMaster").msg === "isdbgrid");
var coll = db.index_partial_create_drop;
- var getNumKeys = function(idxName) {
+ var getNumKeys = function (idxName) {
var res = assert.commandWorked(coll.validate(true));
var kpi;
if (isMongos) {
@@ -19,7 +19,7 @@
coll.drop();
- // Check bad partialFilterExpression spec on create.
+ // Check bad filter spec on create.
assert.commandFailed(coll.ensureIndex({x: 1}, {partialFilterExpression: 5}));
assert.commandFailed(coll.ensureIndex({x: 1}, {partialFilterExpression: {x: {$asdasd: 3}}}));
assert.commandFailed(coll.ensureIndex({x: 1}, {partialFilterExpression: {$and: 5}}));
@@ -40,7 +40,8 @@
assert.eq(1, coll.getIndexes().length);
// Create partial index in background.
- assert.commandWorked(coll.ensureIndex({x: 1}, {background: true, partialFilterExpression: {a: {$lt: 5}}}));
+ assert.commandWorked(coll.ensureIndex({x: 1}, {background: true,
+ partialFilterExpression: {a: {$lt: 5}}}));
assert.eq(5, getNumKeys("x_1"));
assert.commandWorked(coll.dropIndex({x: 1}));
assert.eq(1, coll.getIndexes().length);
@@ -54,15 +55,14 @@
// Partial indexes can't also be sparse indexes.
assert.commandFailed(coll.ensureIndex({x: 1}, {partialFilterExpression: {a: 1}, sparse: true}));
assert.commandFailed(coll.ensureIndex({x: 1}, {partialFilterExpression: {a: 1}, sparse: 1}));
- assert.commandWorked(coll.ensureIndex({x: 1}, {partialFilterExpression: {a: 1}, sparse: false}));
+ assert.commandWorked(coll.ensureIndex({x: 1}, {partialFilterExpression: {a: 1},
+ sparse: false}));
assert.eq(2, coll.getIndexes().length);
assert.commandWorked(coll.dropIndex({x: 1}));
+ assert.eq(1, coll.getIndexes().length);
- // _id index can't be a partial index. SERVER-18170
- //coll.drop();
- //assert.commandWorked(db.createCollection("index_partial_basic",
- // {autoIndexId: false}));
- //assert.commandFailed(coll.ensureIndex({_id: 1}, {partialFilterExpression: {a: 1}}));
-
+ // SERVER-18858: Verify that query compatible w/ partial index succeeds after index drop.
+ assert.commandWorked(coll.ensureIndex({x: 1}, {partialFilterExpression: {a: {$lt: 5}}}));
+ assert.commandWorked(coll.dropIndex({x: 1}));
+ assert.eq(1, coll.find({x: 0, a: 0}).itcount());
})();
-