Files
mongo/jstests/core/query/update/update_arraymatch7.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

22 lines
651 B
JavaScript
Raw Normal View History

// @tags: [requires_non_retryable_writes]
// Check that the positional operator works properly when an index only match is used for the update
// query spec. SERVER-5067
const t = db[jsTestName()];
t.drop();
function testPositionalInc() {
assert.commandWorked(t.remove({}));
assert.commandWorked(t.save({a: [{b: 'match', count: 0}]}));
assert.commandWorked(t.update({'a.b': 'match'}, {$inc: {'a.$.count': 1}}));
// Check that the positional $inc succeeded.
assert(t.findOne({'a.count': 1}));
}
testPositionalInc();
// Now check with a non multikey index.
assert.commandWorked(t.createIndex({'a.b': 1}));
testPositionalInc();