Files
mongo/jstests/core/sort9.js

30 lines
1.0 KiB
JavaScript

// Unindexed array sorting SERVER-2884
// @tags: [
// sbe_incompatible,
// ]
t = db.jstests_sort9;
t.drop();
t.save({a: []});
t.save({a: [[]]});
assert.eq(2, t.find({a: {$ne: 4}}).sort({a: 1}).itcount());
assert.eq(2, t.find({'a.b': {$ne: 4}}).sort({'a.b': 1}).itcount());
assert.eq(2, t.find({a: {$ne: 4}}).sort({'a.b': 1}).itcount());
t.drop();
t.save({});
assert.eq(1, t.find({a: {$ne: 4}}).sort({a: 1}).itcount());
assert.eq(1, t.find({'a.b': {$ne: 4}}).sort({'a.b': 1}).itcount());
assert.eq(1, t.find({a: {$ne: 4}}).sort({'a.b': 1}).itcount());
assert.eq(1, t.find({a: {$exists: 0}}).sort({a: 1}).itcount());
assert.eq(1, t.find({a: {$exists: 0}}).sort({'a.b': 1}).itcount());
t.drop();
t.save({a: {}});
assert.eq(1, t.find({a: {$ne: 4}}).sort({a: 1}).itcount());
assert.eq(1, t.find({'a.b': {$ne: 4}}).sort({'a.b': 1}).itcount());
assert.eq(1, t.find({a: {$ne: 4}}).sort({'a.b': 1}).itcount());
assert.eq(1, t.find({'a.b': {$exists: 0}}).sort({a: 1}).itcount());
assert.eq(1, t.find({'a.b': {$exists: 0}}).sort({'a.b': 1}).itcount());